이번글에서는 github의 특정 repository에 push가 발생했을때, jenkins가 상황을 인지하고 배포하는 과정에 대해 알아보도록하자.
1. Github Webhook 세팅
Webhook 이란?
웹훅이란?
위 사진은 웹훅을 정말 잘 설명해주고 있다.
simsimjae.medium.com
우선, Webhook 설정을 위해 jenkins 메인 대시보드에서 아래의 경로로 이동하도록하자 (Jenkins 관리 > 시스템 설정)
Jenkins URL로 Github에서 요청이들어올 것이다. 이 부분을 확인하도록하자.
확인 후에 Webhook을 설정할 깃허브 레포지토리에서 아래와 같은 경로로 이동하도록하자.
(Settings > Webhooks > Add webhook)
해당 페이지로 이동하면 Payload URL을 입력해야 하는데, 위에서 확인했던 Jenkins URL/github-webhook/을 입력해주도록 하자.
아래와 같이 입력하고, Content type 을 application/json으로 설정해주도록하자.
추가 버튼을 누르게 되면 아래와 같이 추가된 Webhook을 확인할 수 있다.
2. Jenkins Webhook 세팅
Github의 Webhook 설정이 다 되었다면 Jenkins에서 설정을 하도록하자.
Jenkins와 github를 연동하기 위해서 플러그인을 설치해야하는데, 해당 플러그인은 jenkins에서 지원해주기 때문에 간단하게 설치할 수 있다. 우선 Jenkins 관리 > 플러그인 관리로 이동하도록하자.
그런 후에 설치가능 탭에서 Github Integration을 검색하고 설치하도록하자(필자는 이미 설치되었기 때문에 노출안됨)
설치가 완료되었다면, 젠킨스에서 생성해둔 프로젝트 페이지로 이동하고 "구성" 메뉴로 이동하도록 하자.
그리고 Github에서 push가 발생했을때 자동으로 빌드를 할 수 있도록 아래와 같이 설정하도록 하자.
(빌드 유발 > GitHub hook trigger for GITScm polling)
여기 까지 설정이 끝났다면, jenkins와 연동한 github repository로 push해보도록하자. 그러면 jenkins에서 빌드이력이 생성된 것을 확인할 수 있다. (push된 commit의 hash값과 젠킨스 로그에 남은 hash 값을 비교하면됨)
webhook을 시도한 이력을 확인하려면 github에서 webhook을 등록했던 페이지 에서 확인이 가능하다.
여기까지 확인이 되었다면,
다음 글에서는 jenkins에서 스프링부트 프로젝트를 github에서 가져와 빌드한 후 원격 서버로 .jar파일 형태로 전송하여 해당 .jar파일을 실행시키는 과정에 대해 알아보도록하자.
다음글
[Jenkins] Jenkins & Github 연동 및 자동배포 구성하기 3
이번 글에서는 jenkins에서 스프링부트 프로젝트를 github에서 가져와 빌드한 후 특정 서버로 .jar파일 형태로 전송하여 해당 .jar파일을 실행시키는 과정에 대해 알아보도록하자. (이 글에서 실습한
dbjh.tistory.com
'Infra > Jenkins' 카테고리의 다른 글
[Jenkins] Jenkins로 Nginx 및 Spring Boot 컨테이너를 원격서버에 띄워서 Reverse Proxy 구성하기 (0) | 2021.02.07 |
---|---|
[Jenkins] Jenkins를 이용하여 원격 서버에 SpringBoot 컨테이너 띄우기 (0) | 2021.01.24 |
[Jenkins] Jenkins & Github 연동 및 자동배포 구성하기 3 (0) | 2020.12.31 |
[Jenkins] Jenkins & Github 연동 및 자동배포 구성하기 1 (0) | 2020.12.29 |
[Jenkins] Linux(Centos & RHEL)에 Jenkins 설치하기 (1) | 2020.12.22 |
댓글