Gerrit – rozszerzenia

Opublikowany Autor Piotr Cudnik2 komentarze

W tym wpisie przedstawię jak można rozszerzy funkcjonalności gerrit’a za pomocą plugin’ów, oraz gitweb’a. Czysty gerrit jak najbardziej spełnia swoje podstawowe zadania, umożliwia wykonanie code review i zapewnia kontrole dostępu do repozytorium. Pewne elementy możemy jednak ulepszyć, by praca z gerrit’em była bardziej komfortowa. Gerrit udostępnia kilkanaście rozszerzeń oraz wspiera przegląd repozytorium za pomocą gitweb’a.   

Instalacja plugin’ów

Pluginy do gerita można pobrać ze strony https://gerrit-ci.gerritforge.com/ z odpowiedniej zakładki możemy wybrać z listy te rozszerzenia, które nas interesują. Lista plugin’ów jest uaktualniana na bieżąco, pojawiają się nowe wersje plugin’ów skompilowane już do pliku jar.  Aby zainstalować plugin wystarczy pobrać jra z pluginem, który nas interesuje i przenieść go do podkatalogu gerrit’a plugins. Poniżej przedstawiam listę najbardziej przydatnych rozszerzeń, które warto zainstalować już na samym początku pracy z gerrit’em.

Plugin-delete-project

Dodaje przycisk z funkcjonalnością usunięcia brancha w gerrit’cie.

wget https://gerrit-ci.gerritforge.com/view/Plugins-stable-2.14/job/plugin-delete-project-bazel-master-stable-2.14/lastSuccessfulBuild/artifact/bazel-genfiles/plugins/delete-project/delete-project.jar

przenosimy do katalogu plugins/

mv delete-project.jar ~/gerrit-2.13.6/plugins/
Plugin download-commands

Zestaw komend do pobrania repozytorium na lokalny komputer.

wget https://gerrit-ci.gerritforge.com/view/Plugins-stable-2.13/job/plugin-project-download-commands-stable-2.13/lastSuccessfulBuild/artifact/buck-out/gen/plugins/project-download-commands/project-download-commands.jar

przenosimy do katalogu plugins/

mv project-download-commands.jar ~/gerrit-2.13.6/plugins/

restartujemy gerrita

 ~/gerrit-2.13.6/bin/gerrit.sh restart

 

Gitweb

Gitweb umożliwia podgląd repozytorium z poziomu przeglądarki. Nie musimy pobierać repozytorium na lokalny dysk by podejrzeć historie wprowadzanych zmian czy też podejrzeć dowolny plik znajdujący się w repozytorium.

Instalacja/ konfiguracja:
Sprawdzamy czy mamy już zainstalowanego gitweb’a na serwerze. Gitweb powinien być dostępny pod ścieżka /usr/lib/cgi-bin/gitweb.cgi. Jeżeli nie mamy zainstalowanego gitweb’a to  instalujemy  poleceniem

sudo apt-get install gitweb

 

Następnie w pliku konfiguracyjnym gerrit’a  ~/gerrit-2.13.6/etc/gerrit.config dopisujemy

[gitweb]
        cgi = /usr/lib/cgi-bin/gitweb.cgi
        type = gitweb

restartujemy gerrita

~/gerrit-2.13.6/bin/gerrit.sh restart

 

Aby można było podglądać zawartość repozytorium należy jeszcze dodać uprawnienia

Read dla Reference: refs/*
Read dla Reference: refs/meta/config z zaznaczonym Exclusive