blob: 77f5d2130bbdcc55f12c4481624f13bbcfbe4ceb [file] [log] [blame] [view]
GitBlit plugin
==============
Overview
--------
Purpose of this plugin is to use Gitblit as web-based viewer
(i.e. GitWeb replacement) on top of Gerrit Code Review.
How to build
------------
As pre-requisites you need to make a custom-build of Gitblit
and Wicket: the standard JARs downloaded from a public Maven
repository aren't enough as they are missing some specific
build parameters and constraints (i.e. shaded-jar) that are
needed for a Gerrit plugin to work properly.
### Gitblit
You need to clone Gitblit from GitHub and build it locally
using the installMaven ANT target.
$ git clone https://github.com/gitblit/gitblit.git
$ cd gitblit && git checkout master
$ ant -DresourceFolderPrefix=static installMaven
### Gitblit plugin
This gitblit plugin is built with Bazel.
Only the Gerrit in-tree build is supported.
Clone or link this plugin to the plugins directory of Gerrit's source
tree.
```
git clone https://gerrit.googlesource.com/gerrit
git clone https://gerrit.googlesource.com/plugins/gitblit
cd gerrit/plugins
ln -s ../../gitblit .
rm external_plugin_deps.bzl
ln -s gitblit/external_plugin_deps.bzl .
cd ../
```
From Gerrit source tree issue the command:
```
bazel build plugins/gitblit
```
The output is created in
```
bazel-bin/plugins/gitblit/gitblit.jar
```
This project can be imported into the Eclipse IDE.
Add the plugin name to the `CUSTOM_PLUGINS` set in
Gerrit core in `tools/bzl/plugins.bzl`, and execute:
```
./tools/eclipse/project.py
```
Configuration
-------------
In order to use GitBlit as GitWeb replacement, run the Gerrit init
again and answer 'Y' when asked during the Gitblit-specific initialisation.
Example:
```
*** GitBlit Integration
***
Do you want to use GitBlit as your GitWeb viewer? [Y/n]? y
Link name [GitBlit]:
"Repositories" submenu title [Repositories]:
"Activity" submenu title [Activity]:
"Documentation" submenu title [Documentation]:
"Search" submenu title (makes only sense to set if some projects are indexed in GitBlit; single dash unsets) [Search]:
"Browse" submenu title for the "Projects" top-level menu [Browse]:
```