회사에서 Gerrit~GitHub 연계를 위해서 방법을 찾던 中
부서원들이 GitHub Plugin이라는 것이 있다는 것을 알아냈는데... 좀 문제가 있었다.
바이너리가 아니라 빌드를 해서 사용해야한다는 문제인데...
더욱 더 큰 문제는... 빌드가 쉽지는 않다는 사태가...
기본 가이드 링크는 아래와 같다.
- https://gerrit.googlesource.com/plugins/github/+/refs/heads/stable-2.12/README.md
언제나 그렇지만... 시키는대로 따라할 수가 없어서 문제이지...
[ Action ]
참고할 정보가 있는 기준(?) 레퍼런스...
https://gerrit-review.
링크가 깨졌다.
그렇지만, 포기하지 않는다!!!
https://review.openstack.org/Documentation/dev-buck.html
여기에서 확인할 수 있었다.
① Git
- 소스들을 받아오기 위해서는 기본적으로 Git이 필요하다.
$ sudo apt-get install git
② JDK
- Gerrit은 기본적으로 Java 기반이기에... 가이드에는 JDK7이 필요하다고 되어있다.
- 무시하고 JDK8로 환경을 맞춰서 했다가 다 망했다..
- 무조건 JDK7 환경으로 진행을 해라!!!
③ Ant
- Buck 이라는 빌드 도구를 빌드하기 위해서는 Ant가 필요하다.
- 응!? Unix is not Unix ?
$ sudo apt-get install ant
④ Gerrit download
- Gerrit 빌드할 준비를 위해 미리 소스코드를 내려 받는다.
- 이번 빌드는 2.10 버전을 기준으로 할 것이다.
(실제로 2.10 버전을 보면 2.10.7 까지 있는데, 우선은 가이드에 있는 2.10.2 버전으로 해보겠다)
$ cd /srv/workspace
$ git clone --recursive https://gerrit.googlesource.com/gerrit
$ cd gerrit
$ git reset --hard v2.10.2
⑤ Buck
- 이번에 처음 들어본 빌드 도구이다. Buck ?!
- Facebook 에서 만들었고, 오픈소스로 공개한 것인가 보다.
. https://buckbuild.com/
. https://github.com/facebook/buck
$ cd /srv/workspace
$ git clone https://github.com/facebook/buck
$ cd buck
$ git checkout $(cat ../gerrit/.buckversion)
$ ant
$ export PATH=$PATH:/srv/workspace/buck/bin/
⑥ Gerrit Build
- 이제 Buck으로 Gerrit을 빌드해보자. 안해도 된다. 그냥 해보기.
$ cd /srv/workspace/gerrit
$ buck build gerrit
⑦ maven
- 뒤에 것들을 진행하기 위해서 이것도 필요하다.
$ sudo apt-get install maven
⑧ GitHub API
- 이것도 필요하단다...
$ cd /srv/workspace
$ git clone https://github.com/lucamilanesio/github-api.git
$ cd github-api/
$ mvn install -DskipTests=true
⑨ singleusergroup plugin
- 또 필요한거 빌드 하자.
$ cd /srv/workspace/gerrit
$ cd ./plugins/singleusergroup
$ git reset --hard v2.10.2
$ cd /srv/workspace/gerrit
$ buck build plugins/singleusergroup/
⑩ github plugin
- 이제 본게임으로 들어가자
- 최신 버전으로는 빌드가 안되어 알아낸 방법..... 2.10 버전으로 하면 된다.
$ cd /srv/workspace
$ git clone https://gerrit.googlesource.com/plugins/github
$ cd github
$ git checkout -b stabe-2.10 origin/stable-2.10
$ mvn install
...
[INFO] ------------------------------------------------------------------------
[INFO] Reactor Summary:
[INFO]
[INFO] Gerrit Code Review - GitHub integration ........... SUCCESS [2.338s]
[INFO] Gerrit Code Review - GitHub OAuth login ........... SUCCESS [22.009s]
[INFO] Gerrit Code Review - GitHub plugin ................ SUCCESS [18.869s]
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 44.113s
[INFO] Finished at: Mon Mar 27 00:09:03 KST 2017
[INFO] Final Memory: 31M/91M
[INFO] ------------------------------------------------------------------------
빌드까지는 성공~
이후 설치 및 셋팅은 다음 기회에~^^
original-github-oauth-2.10.3.jar
original-github-plugin-2.10.3.jar
original-github-oauth-2.13.jar
original-github-plugin-2.13.jar
'SCM > Git-GitHub' 카테고리의 다른 글
repo (git-repo) : 복수 저장소 다루기 (#2) in Windows (0) | 2019.06.18 |
---|---|
repo (git-repo) : 복수 저장소 다루기 (#1) in Ubuntu (0) | 2019.06.17 |
Merge (3-way, fast-forward, cherry-pick) (0) | 2016.11.12 |
GitLab in Docker (간편하게 설치하기) (0) | 2016.01.30 |
Git build & install (linuxmint-17-cinnamon-64bit-v2, Git 2.1.2) (0) | 2014.10.26 |