jenkins 와 github webhook 연동
소스코드는 git 과 github.com 을 이용해 관리 중이다. jenkins를 이용해 github 에 push 됐을 때 git pull
명령을 실행하도록 github.com webhook 연동을 테스트 했다. 우선 jenkins 에서 테스트 프로젝트를 추가하고 아래와 같이 설정했다.
1. jenkins 설정
jenkins 와 github.com webhook 을 연동하기 위해서는 GitHub Integration Plugin
플러그인을 먼저 설치해야 한다.
jenkins 설정을 마친 후 github.com 에서 webhook 설정을 진행한다. git pull
명령을 실행하기 위해서는 ssh 키가 미리 등록되어 있어야 한다. jenkins의 ssh 키 파일은 /var/lib/jenkins/.ssh
디록토리 안에 위치해야 한다. 테스트를 jenkins 가 실행한 쉘스크립트 코드는 아래와 같이 작성했다.
#!/bin/bash
cd /var/lib/jenkins/jenkins-test
git pull
2. github.com webhook 설정
테스트로 생성한 github.com 의 jenkins-test 리포지토리를 jenkins 서버에 git clone
한다. 로컬 경로는 /var/lib/jenkins/jenkins-test
로 했다.
webhook url 은 http://jenkins.example.com/github-webhook/
와 같이 등록한다. Content type 은 application/x-www-form-urlencoded
로 지정한다. 연동 작업 완료 후 git commit
, git push
명령을 실행해서 연동이 제대로 되는지 테스트 한다.