[Jenkins] Email 알림 받기
[Jenkins] Email 알림 받기
Jenkins를 통해 작업 상태에 대한 Email 알림을 받을 수 있습니다.
Jenkins 플러그인에서 Email 기능을 제공하는 Email Extension 플러그인을 사용하며 Email 알림에 대한 여러 설정을 할 수 있으며, 간단하게 Email 알림을 받을 수 있도록 설정해보겠습니다.
Email Extension 플러그인 설치
Jenkins 관리 -> Plugins -> Available plugins 메뉴에서 Email Extension
검색 후 플러그인을 설치합니다.
플러그인 설치 후 System Configuration 설정을 통해 Email 알림에 대힌 기본적인 설정을 할 수 있습니다.
Email System Configuration 설정
Jenkins 관리 -> System Configuration -> System 메뉴를 선택합니다.
Extended E-mail Notification 설정에서 Email 관련 설정을 진행합니다.
SMTP server 및 SMTP Port는 설정하고자 하는 Email 서버의 정보를 입력합니다.
Credentials는 Email 알림을 발송하는 계정의 정보를 입력합니다.
Gmail인 경우 Gmail 앱 비밀번호를 통해 Gmail API를 사용할 수 있으며 계정명과 Gmail 앱 비밀번호를 Username, Password 값에 각각 입력 후 저장 및 적용합니다.
Gmail 앱 비밀번호 발급 방법은 아래 링크를 참고하시기 바랍니다.
https://every-up.tistory.com/81
Jenkins 코드
Email Extension 플러그인 설치를 통해 emailext
기능을 Jenkins에서 사용할 수 있게 되었습니다.emailext
은 기본적인 Email 제목, Email 내용, Email 수신자 등의 정보를 정의할 수 있으며 Email을 보낼 수 있습니다.
pipeline {
agent any
stages {
stage('Mail-Test') {
steps {
emailext (
subject: "TEST Subject",
body: "Test Message",
to: "test@test.com"
)
}
}
}
}
- subject : Email 제목
- body : Email 내용
- to : Email 수신자 (optional)
해당 코드를 추가하여 Email 알림 테스트를 진행해보도록 하겠습니다.
Email 테스트
pipeline 실행이 완료되면 수신자(to) 주소로 Email이 발송됩니다.
설정한 emailext
기능의 내용으로 Email 제목 및 내용이 수신되었습니다.
해당 기능을 통해 다양한 메일 제목 및 내용과 수신자들에게 Email을 보낼 수 있습니다.
응용
환경 변수 사용
Email 제목 및 내용에 환경 변수 값을 추가하여 작업에 대한 구분을 Email 제목 및 내용을 통해 확인할 수 있습니다.
subject: "[{env.JOB_NAME}] [${env.TAG_NAME}] [${env.BUILD_ID}]"
mimType 변경
text/html
등의 타입으로 변경하여 Email 내용을 html 및 기타 형식으로 변경 후 Email을 보낼 수 있습니다.
mimeType: 'text/html'
Email 수신자 설정
수신자, 참조, 숨은 참조 설정을 할 수 있습니다.
to : 'test1@test.com, cc:test2@test.com, bcc:test3@test.com'
기타
- 성공 실패 여부에 따른 이메일 전송
- 첨부 파일 전송
- 수신자 목록 관리
Jenkins에서 Email Extension 플러그인을 설치하고, System Configuration 설정을 통해 이메일 알림을 구성할 수 있습니다.
emailext 기능을 사용하여 이메일 제목, 내용, 수신자 등을 설정하고 Pipeline 코드에 추가하여 작업 상태에 대한 이메일 알림을 받을 수 있습니다. 환경 변수를 사용하여 작업에 대한 정보를 이메일 제목 및 내용에 포함시킬 수 있으며, 이메일의 mimType을 변경하여 HTML 형식의 이메일을 보낼 수도 있습니다. 또한, 수신자, 참조, 숨은 참조 설정을 통해 다양한 이메일 수신자를 지정할 수 있습니다.
이 외에도 성공, 실패 여부에 따른 이메일 전송, 첨부 파일 전송, 수신자 목록 관리 등의 기능을 활용할 수 있습니다.
지금까지 Jenkins에서 Email Extension 플러그인을 사용하여 이메일 알림을 설정하는 방법에 대해 알아보는 시간을 가졌습니다...! 끝...!
유익하게 보셨다면 공감을 눌러주고, 댓글로 의견을 공유해 남겨주시면 감사하겠습니다!
[Reference]
https://www.jenkins.io/doc/pipeline/steps/email-ext/