CI/Jenkins

Jenkins CI 와 Slack 연동하기

후뤼한잉여 2015. 12. 10. 16:38

Jenkins CI 와 Slack 연동하기

1. 개요

Jenkins CI를 적용하면서 빌드에 대한 내용도 슬랙으로 받아보는 테스트를 진행해보고자 설정한 내용을 정리한 문서입니다.
잉여이기 때문에 실무에서 사용하는 내용이 아니지만 나중에라도 써먹거나 누군가한테 도움이 될만한 힌트용으로라도 남기고자 합니다.
기본적인 진행 방법은 GitLab과 Slack 연동하기과 동일하므로 그림은 일체 넣지 않았습니다.

2. Slack 설정

Slack에 접속된 상태(PC 앱, 웹) 기준으로 진행합니다.

  1. Slack 왼쪽 상단에 Slack 도메인 선택
  2. 메뉴 중 [Configure Integrations] 메뉴 클릭
  3. 연동할 서비스 목록에 Jenkins 입력하여 검색
  4. 검색 된 Jenkins CI 클릭
  5. Jenkins CI에서 포스팅할 채널을 선택 후 [Add Jenkins CI Intergration] 버튼 클릭
  6. Team DomainIntegration Token 어딘가에 임시로 기록
    (사실 JenkinsCI와 Slack 두 페이지를 동시에 띄어서 작업하겠지만 메뉴얼 작성시에는 동시 설명이 어려우므로… 기록 한다는 형식으로 작성하였습니다.)
  7. Save Settins 메뉴 클릭

3. Jenkins CI 설정

  1. Jenkins CI 접속
  2. [Jenkins 관리] 메뉴 클릭
  3. [플러그인 관리] 메뉴 클릭
  4. 설치 가능 탭에서 Slack Notification Plugin 플러그인 설치
  5. [Jenkins 관리] 메뉴 클릭
  6. [시스템 설정] 메뉴 클릭
  7. 중간 부분에 Global Slack Notifier Settings에 슬랙에서 발급받은 정보 입력
    • Team Domain : 슬랙 도메인 입력
    • Integration Token : 슬랙에서 발급 받은 토큰 입력
    • Channel : 포스트할 채널 입력. 콤마(,)로 여러 채널 포스팅 지원
    • Build Server URL : 빌드 서버 즉, CI 서버 주소 입력
  8. [저장] 버튼 클릭
  9. Job(프로젝트) 선택
  10. [구성] 클릭
  11. Slack Notifications 부분에 슬랙으로 알림 할 상항을 설정.
    • Notify Build Start : 빌드 시작 시
    • Notify Aborted : 사용자가 임의로 중지 시
    • Notify Failure : 빌드 실패 시
    • Notify Not Built :
    • Notify Success : 빌드 성공 시
    • Notify Unstable :
    • Notify Back To Normal :
  12. [빌드 후 조치 추가] 리스트 박스를 클릭 후 Slack Notifications를 등록
  13. [저장] 버튼 클릭