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

View File

@@ -0,0 +1,42 @@
load('//tools/bzl:java.bzl', 'java_library2')
java_library2(
name = 'lib',
srcs = glob(['src/test/java/com/google/gerrit/acceptance/*.java']),
exported_deps = [
'//gerrit-acceptance-framework:lib',
'//gerrit-common:annotations',
'//gerrit-common:server',
'//gerrit-extension-api:api',
'//gerrit-gpg:testutil',
'//gerrit-launcher:launcher',
'//gerrit-lucene:lucene',
'//gerrit-httpd:httpd',
'//gerrit-pgm:init',
'//gerrit-pgm:pgm',
'//gerrit-pgm:util',
'//gerrit-reviewdb:server',
'//gerrit-server:server',
'//gerrit-server:testutil',
'//gerrit-server/src/main/prolog:common',
'//gerrit-sshd:sshd',
'//lib:args4j',
'//lib:gson',
'//lib:gwtjsonrpc',
'//lib:gwtorm',
'//lib:h2',
'//lib:jsch',
'//lib:servlet-api-3_1-without-neverlink',
'//lib/bouncycastle:bcpg',
'//lib/bouncycastle:bcprov',
'//lib/guice:guice',
'//lib/guice:guice-assistedinject',
'//lib/guice:guice-servlet',
'//lib/log:api',
'//lib/jgit/org.eclipse.jgit:jgit',
'//lib/mina:sshd',
],
visibility = ['//visibility:public'],
)