리셋 되지 말자

[Jenkins] publish over SSH를 이용한 Docker 서비스 배포(3) 본문

CI CD

[Jenkins] publish over SSH를 이용한 Docker 서비스 배포(3)

kyeongjun-dev 2021. 5. 27. 11:05

Github 프로젝트 연동

테스트에 사용할 깃허브 프로젝트 주소는 아래와 같다.
https://github.com/Penguin135/my_node_practice

개인 repository를 생성하거나 fork 해가서 사용하면 된다.

 

1. Jenkins Item에 github 주소 설정

이전 게시물에서 설정했던 Jenkins Item으로 가서 좌측 메뉴의 '구성'을 선택

 

1. '소스 코드 관리' 부분에서 'Git'에 체크
2. 'Repository URL' 입력란에 github repository 주소 입력
3. 'Branches to build' 입력란을 ** 으로 수정. (TMI : github master 브랜치가 main으로 변경되었다.)

'빌드 유발' 부분에서 'Github hook trigger for GITScm poling'을 체크한 뒤 '저장'버튼으로 설정을 마무리한다.
젠킨스 설정이 끝났다.

2. github webhook 설정

repository 메뉴에서 'Settings' 메뉴를 선택

 

1. 좌측 메뉴 중 'Webhooks' 메뉴 선택
2. 우측의 'Add webhook' 버튼 선택

 

1. 'Payload URL'에 '젠킨스주소/github-webhook/'를 입력
2. 'Just the push event' 체크
3. 'Add webhook' 클릭하여 webhook 추가

 

webhook이 추가된 것을 확인

 

조금 기다리고 나서 화면을 새로고침을 하면 초록색 체크 표시가 생기는걸 확인할 수 있다.
이는 webhook 전송을 성공했다는 의미다. 만약 설정이 잘못되었으면 빨간 동그라미(?)가 표시된다.

 

소스코드 Push 테스트

간단하게 git clone을 받고, README.md 파일을 수정해본다.

 

위 내용에서 push 오른쪽의 숫자 1을 2로 변경하여 push 해본다.

 

github repository의 webhook 메뉴로 돌아가서, 생성했던 webhook을 클릭

 

webhook이 전송된 것을 확인할 수 있다.
맨 아래의 webhook은, 처음 webhook을 생성했을 때, 테스트 목적으로 자동으로 전송되었던 webhook이다.

 

Jenkins의 Item으로 들어가면, 빨갛게 표시된 부분처럼 'build'과정이 진행된 것을 확인할 수 있다.

이제 소스코드를 변경하고, push하면 Github에서 Jenkins로 webhook을 전송하게 되고, webhook을 받은 Jenkins는 우리가 설정한 대로 build과정을 진행하게 되었다.

Comments