blob: 4889aad386da0c3f517473cfaf90721f07028084 [file] [log] [blame]
Bazel Build
===========
This plugin can be built with Bazel
Build standalone
----------------
To build all the example plugins, issue the following command:
bazel build :all
The output for all the example plugins is created in
bazel-genfiles/all.zip
To build a specific example plugin, issue one of the following commands:
bazel build example-<example>
OR
cd example-<example> && bazel build example-<example>
If the build command is run from the top-level example directory,
the output for the example is created in
bazel-genfiles/example-<example>/example-<example>.jar
If the build command is run from inside a specific example directory,
the output for the example is created in
example-<example>/bazel-genfiles/example-<example>.jar
Buck Build
==========
This plugin can be built with Buck.
Two build modes are supported: Standalone and in Gerrit tree. Standalone
build mode is recommended, as this mode doesn't require local Gerrit
tree to exist.
Build standalone
----------------
Clone bucklets library:
git clone https://gerrit.googlesource.com/bucklets
and link it to examples directory:
cd examples && ln -s ../bucklets .
To build a specific example plugin, issue the following command:
cd example-<example> && buck build plugin
The output or each example is created in
buck-out/gen/example-<example>.jar
To execute the tests run:
buck test
Build in Gerrit tree
--------------------
Clone or link this plugin to the plugins directory of Gerrit's source
tree, and issue the command:
buck build plugins/examples/example-<example>
The output is created in
buck-out/gen/plugins/examples/example-<example>/example-<example>.jar
This project can be imported into the Eclipse IDE:
./tools/eclipse/project.py
To execute the tests run:
buck test --include examples/example-<example>
Note that for compatibility reasons a Maven build is provided, but is considered
to be deprecated and will be removed in a future version of this plugin.
To build with Maven, change directory to the specific example plugin folder and
issue the command:
mvn clean package
When building with Maven, the Gerrit Plugin API must be available.
How to build the Gerrit Plugin API is described in the Gerrit
documentation (../../../Documentation/dev-buck.html#_extension_and_plugin_api_jar_files).