Gerrit Plugin Build
2016년 7월을 기준으로 Gerrit 플러그인은 100여개에 달합니다. Gerrit 공식 페이지에서는 실행 가능한 플러그인을 제공하지 않기 때문에 운영중인 Gerrit version에 맞게 스스로 빌드 해야 하겠습니다. 본 문서는 Gerrit 플러그인을 소스로부터 빌드하고 설치하는 방법을 소개합니다. 그리고 빌드 환경은 Linux Ubuntu 또는 CentOS 입니다.
Gerrit plugin 목록 = https://gerrit.googlesource.com
이 문서에서는 delete-project 플러그인을 빌드하고 설치하겠습니다.
*몇 개의 사이트에서 Gerrit CI 빌드 결과를 제공하고 있습니다만 설치되 버전과 호환되는 binary를 찾지 못할 수도 있습니다*
사전 환경
- JDK 설치
- ant 설치
- maven 설치 (일부 stable-v2.12 플러그인 빌드)
- Gerrit 설치 (Gerrit stable-2.12가 설치되었다고 가정하겠습니다)
BUCK 설치
소스코드 가져오기
$ git clone https://github.com/facebook/buck
Gerrit 버전에 맞는 buck 버전 설정하기
$ cd gerrit $ git checkout origin/stable-2.12 $ cat .buckversion 1b03b4313b91b634bd604fc3487a05f877e59dee
buck version 맞추기:
$ cd buck $ git checkout 1b03b4313b91b634bd604fc3487a05f877e59dee
buck 빌드하기:
ant로 buck을 빌드합니다.
$ ant
결과물 확인과 설치:
bin 폴더 하위에 실행파일 buck이 생성됩니다.
$ ls bin/buck buck
조금의 편리함을 위해 buck을 /usr/bin/에 복사합니다. 뭐 좋은 방법은 아니지만.
$ sudo cp buck/bin/buck /usr/bin/
플러그인 빌드하기
소스코드 가져오기
Plugin 소스코드와 Grrit 소스코드를 가져오는 것을 권장 합니다. 내키면 Gerrit 도 update 하면 좋자나요!
$ git clone --recursive https://gerrit.googlesource.com/gerrit $ cd gerrit/plugins $ git clone --recursive https://gerrit.googlesource.com/plugins/delete-project
소스코드 버전 맞추기
가져온 소스코드 버전을 설치된 Gerrit 의 버전과 일치시킵니다. 본 문서에서는 Gerrit stable-2.12가 설치된 것으로 가정합니다.
$ cd gerrit $ git checkout origin/stable-2.12 $ cd plugins/delete-project $ git checkout origin/stable-2.12
빌드하기
BUCK 이용한 빌드
$ cd gerrit $ buck build plugins/delete-project:delete-project
delete-project 플러그인 stable-2.12는 buck으로 빌드하면 오류가 발생하는군요. Maven으로 빌드 해야겠습니다.
결과물 확인:
$ ls buck-out/gen/plugins/delete-project/
Maven 이용한 빌드
$ cd gerrit/plugins/delete-project $ mvn install
결과물 확인:
$ ls target delete-project-2.12.jar
플러그인 설치
delete-project.jar 파일을 설치된 gerrit/plugins 폴더로 복사합니다. 수 분 후 Gerrit의 plugin 페이지에 설치한 플러그인이 표시됩니다. 마음이 급하신 분들은 복사 후 gerrit restart 하시면 플러그인이 곧바로 로드됩니다.
프로젝트 삭제하기