Zayson
A to Zayson!
Zayson
전체 방문자
오늘
어제
  • 분류 전체보기 (132)
    • Computer Science (20)
      • Network (4)
      • DB (12)
      • OS (4)
    • Algorithm (32)
      • 완전탐색(Brute-Force) (3)
      • 그리디(Greedy) (6)
      • 투포인터(Two-Pointer) (1)
      • 그래프(Graph) (5)
      • BFS & DFS (9)
      • 구현, 시뮬레이션(Implementation) (5)
      • 다이나믹 프로그래밍(DP) (3)
    • Backend (51)
      • Spring Boot (19)
      • JPA (16)
      • Kafka (2)
      • Java (13)
      • Kotlin (1)
    • DevOps (1)
      • Jenkins (5)
      • Oracle Cloud Infrastructure (1)
      • Kubernetes & Docker (1)
    • Trouble Shooting (3)
      • JPA (1)
      • Spring Boot (2)
    • 회고 (5)
      • 엔빵 프로젝트 포스트 로드맵 (1)
      • 2022년 (4)
    • Kafka (7)
      • Kafka (5)
      • Kafka Connect (2)
    • 기술 서적 (6)
      • 데이터 중심 애플리케이션 설계 (3)
      • 개발자가 반드시 정복해야할 객체 지향과 디자인 패턴 (2)
      • 가상 면접 사례로 배우는 대규모 시스템 설계 기초 (1)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

인기 글

태그

  • 완전탐색
  • Computer science
  • SpringBoot
  • 관계형 데이터베이스 실전 입문
  • 구현
  • BFS
  • CS
  • dfs
  • 백준
  • spring boot
  • kafka
  • 엔빵프로젝트
  • 프로그래머스
  • Backend
  • 라이브스터디
  • 나 혼자 스프링부트!
  • Java
  • JPA
  • Kafka Connect
  • 그리디

최근 글

티스토리

hELLO · Designed By 정상우.
Zayson

A to Zayson!

[Jenkins CI/CD] 5. Jenkins와 Slack 연동 및 알림 받기
DevOps/Jenkins

[Jenkins CI/CD] 5. Jenkins와 Slack 연동 및 알림 받기

2022. 4. 18. 00:40

젠킨스를 이용해서 스프링 부트, 그래들 프로젝트를 자동으로 서버에 배포하기 위한 절차를 정리한다.

  1. GitHub Repository 코드를 clone 하기
  2. Gradle 프로젝트를 빌드하기
  3. 빌드된 Jar 파일을 클라우드 서버로 전달
  4. Develop 브랜치 및 특정 라벨 설정 PR 시 자동으로 배포 (WebHook 사용)
  5. Jenkins와 Slack 연동 및 알림 받기

Jenkins와 Slack 연동

 

슬랙 앱을 열어서 추가하고자 하는 워크스페이스에 들어가 앱 추가를 클릭한다.

앱에서 Jenkins를 검색해서 추가를 클릭한다.

 

 

Jenkins CI 통합 앱 추가를 클릭하면 슬랙과 젠킨스에서 설정해야 하는 부분을 단계별로 설명해준다,

먼저 젠킨스에서 슬랙 플러그인을 설치한다.

 

 

다음으로 젠킨스 시스템 구성에 들어가서 Slack을 찾아서 연결하고자 하는 슬랙 워크스페이스에 대한 정보를 입력해준다.

 

 

Workspace 부분은 https://workspace이름.slack.com이므로 URL의 workspace 이름을 작성한다.

Credential은 슬랙에서 젠킨스 앱을 추가할때 발급해주는 토큰을 이용해 Secret Text 방식으로 새로 만든 후 저장해 사용한다.

마지막으로 알람을 전달받고 싶은 채널을 Default Chnnel / member id 에 지정해준 후 Test Configuration 한다.

 

 

젠킨스 Pipeline으로 이동해서 하단의 pipeline script에 아래의 코드를 추가해준다. Stages 블럭 이후 새로운 블럭으로 post 블럭을 생성해 작성한다.

post  {
    success {
        slackSend (
            channel: '채널명',           # e.g) #slack-chennel'
            color: '#HexColor'         # e.g) #00ff00
            message: '적고자 하는 메세지'' # e.g) SUCCESSFUL: Job '${env.JOB_NAME} [${env.BUILD_NUMBER}]' (${env.BUILD_URL})
        )
    }
    failure {
        slackSend (
            channel: '채널명',
            color: '#HexColor'
            message: '적고자 하는 메세지''
        )
    }
}

슬랙에 연동되어서 빌드가 성공했을 때 알림이 온것을 확인할 수 있다.

 

📄 References

[Jenkins]Jenkins Pipeline과 Slack 연동하여 알림받기 : https://twofootdog.github.io/Jenkins-Jenkins-Pipeline과-Slack-연동하여-알림받기/

젠킨스 슬랙 공식 문서 : https://plugins.jenkins.io/slack/

반응형

'DevOps > Jenkins' 카테고리의 다른 글

[Jenkins CI/CD] 4. WebHook을 이용한 자동 배포  (0) 2022.04.18
[Jenkins CI/CD] 3. Jar 파일을 클라우드 서버로 전달하기  (0) 2022.04.18
[Jenkins CI/CD] 2. Gradle 프로젝트 빌드하기  (0) 2022.04.18
[Jenkins CI/CD] 1. GitHub Repository Clone하기  (0) 2022.04.18
    'DevOps/Jenkins' 카테고리의 다른 글
    • [Jenkins CI/CD] 4. WebHook을 이용한 자동 배포
    • [Jenkins CI/CD] 3. Jar 파일을 클라우드 서버로 전달하기
    • [Jenkins CI/CD] 2. Gradle 프로젝트 빌드하기
    • [Jenkins CI/CD] 1. GitHub Repository Clone하기
    Zayson
    Zayson
    공부한 내용을 정리하는 공간

    티스토리툴바