Implement Bazel build

To run the tests:

  bazel test //...

To build the Gerrit plugin API, run:

  bazel build gerrit-plugin-api:plugin-api_deploy.jar

To build the Gerrit extension API, run:

  bazel build gerrit-extension-api:extension-api_deploy.jar

TODOs:

Licenses
Reduce visibility (all public for now)
Generate HTML Documentation
Core plugins
gerrit_plugin() rule to build plugins in tree and standalone modes
GWT UI (only gwt_module() skylark rule is provided, no gwt_binary())
PolyGerrit UI
WAR
Publish artifacts to Maven Central
Ask Bazel team to add Gerrit to their CI on ci.bazel.io

Contributed-By: Han-Wen Nienhuys <hanwen@google.com>
Change-Id: I9a86e670882a44a5c966579cdeb8ed79b1590de3
This commit is contained in:
David Ostrovsky
2016-05-21 19:55:01 +02:00
parent 7635765a6d
commit b81b4f75ae
83 changed files with 3365 additions and 9 deletions

30
gerrit-cache-h2/BUILD Normal file
View File

@@ -0,0 +1,30 @@
load('//tools/bzl:junit.bzl', 'junit_tests')
java_library(
name = 'cache-h2',
srcs = glob(['src/main/java/**/*.java']),
deps = [
'//gerrit-common:server',
'//gerrit-extension-api:api',
'//gerrit-server:server',
'//lib:guava',
'//lib:h2',
'//lib/guice:guice',
'//lib/jgit/org.eclipse.jgit:jgit',
'//lib/log:api',
],
visibility = ['//visibility:public'],
)
junit_tests(
name = 'tests',
srcs = glob(['src/test/java/**/*.java']),
deps = [
':cache-h2',
'//gerrit-server:server',
'//lib:guava',
'//lib:h2',
'//lib/guice:guice',
'//lib:junit',
],
)