이 알림 서비스는 SMTP 프로토콜을 이용해 이메일 알림을 보내요. SMTP 서버 호스트·포트·인증 정보와 발신자 주소를 지정해야 하며, 필요하면 HTML 여부와 SSL 검증 생략 여부도 설정할 수 있어요. 대표적으로 Gmail을 SMTP 서버로 쓰는 방식을 많이 사용해요.
출처: 문서
본문
파라미터 (Parameters)
Email 알림 서비스는 SMTP 프로토콜을 이용해 이메일 알림을 보내며, 다음 설정을 지정해야 해요.
host— SMTP 서버 호스트 이름port— SMTP 서버 포트username— 사용자 이름password— 비밀번호from— 발신 이메일 주소html— 선택 사항(bool), true 또는 falseinsecure_skip_verify— 선택 사항(bool), true 또는 false
Gmail 사용하기 (Using Gmail)
Gmail을 SMTP 서비스로 구성할 때는 다음 규칙을 지켜요.
username— 반드시 본인의 Gmail 주소여야 해요.password— 일반 Gmail 비밀번호가 아니라 앱 비밀번호(App Password) 를 사용해요.
앱 비밀번호를 생성하려면 이 링크를 따라가세요 → https://myaccount.google.com/apppasswords
참고 — 이 내용은 개인 Gmail 계정(비 Google Workspace)에 적용돼요. Google Workspace 사용자는 SMTP 설정과 인증 방식이 다를 수 있어요.
예시 (Example)
다음은 Gmail 서비스 설정 예시예요.
apiVersion: v1
kind: ConfigMap
metadata:
name: argocd-notifications-cm
data:
service.email.gmail: |
username: $username
password: $password
host: smtp.gmail.com
port: 465
from: $email-address
인증 없이 사용하는 예시예요.
apiVersion: v1
kind: ConfigMap
metadata:
name: argocd-notifications-cm
data:
service.email.example: |
host: smtp.example.com
port: 587
from: $email-address
템플릿 (Template)
알림 템플릿은 이메일 알림의 제목(subject)을 지정할 수 있게 지원해요.
apiVersion: v1
kind: ConfigMap
metadata:
name: argocd-notifications-cm
data:
template.app-sync-succeeded: |
email:
subject: Application {{.app.metadata.name}} has been successfully synced.
message: |
{{if eq .serviceType "slack"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} has been successfully synced at {{.app.status.operationState.finishedAt}}.
Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .
template.<이름>.email.subject 필드로 이메일 제목을, message로 본문 내용을 지정하는 구조예요. 템플릿 표현식({{.app.metadata.name}} 등)은 그대로 유지돼요.
더 알아보기 (Learn more)
- 트리거(triggers)와 구독(subscriptions) 문서를 함께 보면 어떤 이벤트에 이메일을 보낼지 연결할 수 있어요.
- 팀이 쓰는 다른 서비스(slack, mattermost 등) 문서도 함께 참고해 보세요.