[Slack] 슬랙으로 젠킨스 알림 받기
현재 github push -> github webhook -> 젠킨스 build -> 젠킨스 deploy 와 같은 순서로 진행된다.
하지만 Jenkins가 일을 잘 하고 있는지 수시로 Jenkins 관리자에 접속해서 확인할 수도 없는 노릇이기 때문에,
빌드 결과를 Slack으로 받으면 편리하다!
1. 슬랙에 Jenkins CI 앱 설치
먼저 Slack에 가입하여 WorkSpace를 만든다. 이후, 왼쪽 상단에 Slack 찾아보기 → 앱 클릭

Jenkins 검색 후 추가한다.

추가를 누르면 아래와 같이 설치 후 구성하는 방법을 친절히 알려준다. (🚀지금 단계에서는 우선 넘어가자!)

위 내용은 아래에서 더 자세히 다룰 예정이니,
본 페이지에서는 🌟팀 하위 도메인 과 🌟통합 토큰 자격 증명 ID 값만 잘 복사해두자!

또한, 가장 밑에 알림의 이미지 등 간단한 설정도 가능하니 필요하면 바꿔도 된다.

이제 설정 저장을 누르고 Jenkins에서 필요한 구성을 마저 해보자!
2. Jenkins에서의 작업
1) 플러그인 설치
먼저 Slack의 알림을 요청하기 위한 플러그인을 설치해야 한다.
Jenkins 메인 화면에서 Jenkins 관리 -> 플러그인 관리 탭을 클릭한다.
Slack 검색 후, Slack Notification 플러그인을 선택 → 하단에 Install without restart 클릭

이제 Slack 알림 설정이 가능하다.
2) Credentials 추가
먼저 Slack 알림에 사용될 토큰을 저장해야한다.
Jenkins 메인화면 → Jenkins 관리 탭 → Manage Credentials 버튼 클릭
(global) 위치에 마우스를 올리면 작은 삼각형이 나오는데, 눌러준 뒤 Add credentials 버튼 클릭

이후, Kind 옵션 secret text 선택 → Secret 항목에 아까 복사해둔 통합 토큰 자격 증명 ID 붙여넣기 → ID 항목에 원하는 이름 입력 후 → OK 버튼 클릭

Slack 알림을 위한 Secret Text가 정상적으로 등록되었다.

3) Job에 적용
이제 우리가 이전에 만든 Job의 구성에 다시 접속한다.

맨 아래 빌드 후 조치 → 빌드 후 조치 추가 클릭 → Slack Notifications 선택


원하는 알림 조건을 설정한다. 나는 빌드 시작, 성공 시, 실패 시 알림만 받도록 설정하였다.
설정 후, 하단의 고급 버튼을 클릭한다.

Workspace 항목에는 아까 복사해둔 팀 하위 도메인 값을 설정 → Credential 항목에는 우리가 이전에 만든 Secret Text 값을 선택 → Channel / member id 항목에는 이전에 Slack에서 설정해둔 알림을 받을 채널명(ex: #알림봇)을 입력한다.
이제 오른쪽 하단의 Test Connection 버튼을 클릭하여 테스트를 진행해본다.

Test Connection 버튼을 클릭 시 Success 라는 문자를 확인할 수 있으며, Slack에도 테스트 메세지가 성공적으로 전송된다.

이제 설정을 저장을 한 뒤, 실제 프로젝트를 github에 푸시한 뒤 slack 알림을 테스트해보자!
3. Slack 알림 연동 테스트
인텔리제이에서 프로젝트를 변경한 뒤, git에 push 했다.
우선 기존 방식대로 젠킨스 대시보드에서도 빌드 결과를 확인할 수 있다.

그리고 Slack 에서도 아래와 같이 빌드 시작과 빌드 성공 or 실패 상태를 알림으로 전송해준다!

또한 위에서 Open 링크를 클릭하면,
아래처럼 해당 빌드의 정보를 자세히 확인할 수 있는 페이지로 이동한다.

💛 개인 공부 기록용 블로그입니다. 👻