Jenkins 연동 > GitHub 연동

Jenkins는 CI 도구로 GitHub은 Git Repository로 매우 인기있는 도구입니다. 이 절에서는 Jenkins와 GitHub을 연동하는 방법을 살펴볼 예정입니다. 필요한 준비 사항은 다음 3가지입니다.


  1. Jenkins 서버
  2. GitHub 계정
  3. GitHub에 있는 빌드할 프로젝트


Jenkins에 GitHub 플러그인 설치

처음 해야 할 일은 Jenkins에 GitHub 플러그인를 설치해야 합니다. Jenkins 서버에 접속해 좌측의 “Jenkins 관리 메뉴”를 클릭합니다.


Image


그럼 우측 화면이 바뀌면서 “플러그인 관리” 링크를 볼 수 있습니다.


Image


이제 이 링크를 클릭해 플러그인 관리화면으로 이동합니다. 플러그인 관리 화면은 “업데이트된 플러그인 목록”, “설치 가능”, “설치된 플러그인 목록”, “고급” 탭이 있으며 GitHub 플러그인 설치를 위해서 “설치 가능” 탭을 클릭하고 상단에 있는 “필터” 박스에 “github plugin”을 입력하고 엔터키를 누릅니다.


Image


그럼 위와 같은 화면이 나옵니다. 이제 GitHub 플러그인 설치를 위해 검색된 첫번째 레코드의 좌측에 있는 체크박스를 클릭하고 “지금 다운로드하고 재시작 후 설치하기” 버튼을 클릭합니다. 그럼 다음과 같은 화면이 나옵니다.


Image


설치가 완료되면 화면 하단에 있는 “설치가 끝나고 실행중인 작업이 없으면 Jenkins 재시작” 체크박스를 클릭합니다. 그러면 Jenkins가 실행중인 작업(예를 들면 빌드, 배포 등)이 없으면 바로 Jenkins를 재시작합니다.


이것으로 Jenkins에 GitHub plugin 설치가 완료되었습니다.



GitHub Plugin 설정

Jenkins에 GitHub plugin 설치를 했으면 우리가 가지고 있는 GitHub 계정에 Jenkins가 접속할 수 있도록 설정해야 합니다. 이를 위해 좌측 메뉴에서 “Jenkins 관리” 링크를 클릭하고 우측 화면이 바뀌면 “시스템 설정” 링크를 클릭합니다. 그리고 나서 마우스로 화면 스크롤을 내려서 다음 부분을 찾습니다.


Image


여기에서 “Add GitHub Server” 버튼을 클릭합니다. 그럼 다음과 같이 “GitHub Server”가 나올것입니다. 이 메뉴 버튼을 클릭합니다.


Image


그럼 설정 화면이 다음과 같이 바뀔 것입니다.


Image


그럼 여기에서 GitHub 계정 정보를 연결해야 합니다. GitHub 계정의 연결을 위해서는 먼저 GitHub 개인 계정 관리 화면에서 인증 토큰을 발행해야 합니다. 이 작업을 위해 다음의 URL에 접속합니다.


https://github.com/settings/tokens/new


이 화면에서 발행할 토큰과 Scope를 체크합니다.


Image

선택할 Scope는 “repo”, “admin:repo_hook”입니다.


그리고 나서 화면 스크롤을 내려서 토큰을 발행합니다.


Image


토큰이 발행되면 다음과 같은 화면을 볼 수 있습니다.


Image


이 화면에 있는 토큰 문자열을 안전한 곳에 복사해둡니다(이 토큰 문자열은 필자가 테스트를 위해 생성한 문자열이므로 그대로 사용하시면 안됩니다).


다시 Jenkins로 돌아와 Credentials를 추가하기 위해 “Add” 버튼을 클릭합니다.


Image


그리고 나서 Kind를 클릭해서 “Secret text”를 선택하고 Secret에 GitHub에서 발행한 토큰 문자열을 입력하고 Add 버튼을 클릭합니다.


그러고 나면 “Add Credentials” 다이얼로그가 닫히고 Credentials 셀렉트 박스의 너비가 약간 넓어집니다.


Image


셀렉트 박스를 클릭하면 위의 화면과 같이 나옵니다. 위의 화면에서 “some text”는 방금 우리가 추가한 Credential을 가리킵니다.


Image


이제 화면 하단에 보이는 저장 버튼을 클릭해 GitHub 서버 설정을 완료합니다.


Jenkins Job 설정에서 GitHub 프로젝트 지정하기

이제 Jenkins Job가 GitHub 프로젝트를 사용하도록 설정해야 합니다. Jenkins Job 설정 화면으로 들어갑니다.


Image


그런 다음 으로 “GitHub project” 체크박스를 클릭하고 Project url”에 GitHub 프로젝트의 HTTPS URL을 복사해서 입력하고 화면 하단에 “저장” 버튼을 클릭합니다. 이것으로 Jenkins와 GitHub 연동을 완료했습니다.