본문 바로가기
개발툴

Github Web Hook 설정

by 탁구치는 개발자 2014. 1. 15.

jenkins를 사용하게 되면 대게 폴링을 이용하여 형상 관리 시스템의 리비전이 변경되었는지를 체크한다.

만약 변경이 되어 있으면 빌드가 실행되고, 변경이 없다면 빌드가 실행되지 않는다.

허나 이 방법은 매번 jenkins 시스템이 형상관리 시스템으로 불필요한 요청을 보내게 되는데 이런 문제를 해결할 수 있는 기술이 hook이다.


hook의 동작 방식은 개발자가 github에 소스 코드를 push하면 github 시스템이 jenkins 시스템으로 noti를 보내게 되는 방식이며 이를 받은 jenkins 시스템은 빌드를 시작하게 된다.


다음은 설정 방법이다.

1. GitHub plugin 플러그인 설치


2. Jenkins > configuration > GitHub Web Hook 이동

 - Let Jenkins auto-manage hook URLs 라디오 버튼 클릭 후 Username, Password를 입력한다. (github 로그인, 패스워드를 입력)


3. hook 기능을 사용할 job 프로젝트의 설정에 Build when a change is pushed to GitHub 체크


4. github 페이지 이동 후 프로젝트 선택 > 우측에 Settings > Service Hooks 클릭

 - Service Hooks 목록 중 Jenkins (Github plugin)을 선택한 후 다음과 같이 설정한다. 젠킨스 시스템 URL 뒤에 빨간 박스 영역의 URI만 추가하면 된다. 즉, /github-webhook/ 만 추가하면 되는 것이다.