Add support for Bazel in Gerrit tree build
Change-Id: I05d24424e3f7a3d74835d8a0a7192afa459798e3
diff --git a/BUILD b/BUILD
new file mode 100644
index 0000000..d441b3c
--- /dev/null
+++ b/BUILD
@@ -0,0 +1,14 @@
+load("//tools/bzl:plugin.bzl", "gerrit_plugin")
+
+gerrit_plugin(
+ name = "importer",
+ srcs = glob(["src/main/java/**/*.java"]),
+ gwt_module = "com.googlesource.gerrit.plugins.importer.Importer",
+ manifest_entries = [
+ "Gerrit-PluginName: importer",
+ "Gerrit-Module: com.googlesource.gerrit.plugins.importer.Module",
+ "Gerrit-SshModule: com.googlesource.gerrit.plugins.importer.SshModule",
+ "Gerrit-HttpModule: com.googlesource.gerrit.plugins.importer.HttpModule",
+ ],
+ resources = glob(["src/main/**/*"]),
+)
diff --git a/src/main/resources/Documentation/about.md b/src/main/resources/Documentation/about.md
index b7b867e..b914b97 100644
--- a/src/main/resources/Documentation/about.md
+++ b/src/main/resources/Documentation/about.md
@@ -32,7 +32,6 @@
administrators can see who imported when which project. Imports do also
send audit events.
-<a id="project-import">
### Project Import
The import project functionality allows to import (move) a project from
@@ -44,7 +43,6 @@
Draft changes, draft patch sets, change edits and draft comments are
*not* imported.
-<a id="project-import-process">
#### Process
A project import would be done in several steps:
@@ -72,7 +70,6 @@
fast since it only needs to transfer the delta since the initial (last)
import.
-<a id="project-import-preconditions">
#### Preconditions
Preconditions for a project import:
@@ -106,7 +103,6 @@
All locally created users are added to an internal group called "Imported Users".
-<a id="project-import-commands">
#### Commands
Importing a project can be done via
@@ -132,7 +128,6 @@
When doing a project import the project in the target Gerrit server can
be created with a new name or under another parent project.
-<a id="project-import-steps">
#### How the project import works
The project import is implemented in such a way that it replays the
@@ -163,7 +158,6 @@
global capability is assigned)
* add link to original change as a new change message
-<a id="import-file">
#### Import File
At a point in time a project can be imported only by a single process.
@@ -177,7 +171,6 @@
input parameters do not need to be specified again when the import is
resumed.
-<a id="resume-project-import">
#### Resume Project Import
Once a project was imported, the project import can be resumed to
@@ -207,7 +200,6 @@
This means that any modification of these properties in the target
Gerrit server is overridden if the import of a change is resumed.
-<a id="complete-project-import">
#### Complete Project Import
Completing the project import deletes all refs under the
@@ -216,7 +208,6 @@
project import anymore. Also the project doesn't appear in the list of
imported projects anymore.
-<a id="project-copy">
### Project Copy
Project copy is a special case of project import, where a project from
@@ -226,7 +217,6 @@
is granted the 'Copy Project' capability (provided by this plugin) or
the 'Administrate Server' capability.
-<a id="project-copy-commands">
#### Commands
Copying a project can be done via
@@ -253,14 +243,12 @@
parent project. But you can reparent the project copy after the copy is
done.
-<a id="project-rename">
### Project Rename
By doing a [project copy](#project-copy) and then using the
[delete-project](https://gerrit.googlesource.com/plugins/delete-project/+doc/master/src/main/resources/Documentation/about.md)
plugin to delete the source project, a project can be renamed.
-<a id="group-import">
### Group Import
The import group functionality allows to import a Gerrit group from one
@@ -270,7 +258,6 @@
preserved on import, but the default that is configured for this option
on the target Gerrit server is applied to each imported group.
-<a id="group-import-preconditions">
#### Preconditions
Preconditions for a group import:
@@ -304,7 +291,6 @@
Missing owner groups and missing included groups can be automatically
imported into the target Gerrit server.
-<a id="group-import-commands">
#### Commands
Importing a group can be done via
diff --git a/src/main/resources/Documentation/build.md b/src/main/resources/Documentation/build.md
index a96e116..3c49502 100644
--- a/src/main/resources/Documentation/build.md
+++ b/src/main/resources/Documentation/build.md
@@ -1,71 +1,28 @@
Build
=====
-This plugin can be built with Buck.
+This plugin can be built with Bazel.
-Buck
-----
+Clone (or link) this plugin to the `plugins` directory of Gerrit's source tree.
-Two build modes are supported: Standalone and in Gerrit tree.
-The standalone build mode is recommended, as this mode doesn't require
-the Gerrit tree to exist locally.
-
-### Build standalone
-
-Clone bucklets library:
+Then issue
```
- git clone https://gerrit.googlesource.com/bucklets
-
-```
-and link it to @PLUGIN@ plugin directory:
-
-```
- cd @PLUGIN@ && ln -s ../bucklets .
+ bazel build plugins/@PLUGIN@
```
-Add link to the .buckversion file:
-
-```
- cd @PLUGIN@ && ln -s bucklets/buckversion .buckversion
-```
-
-Add link to the .watchmanconfig file:
-```
- cd @PLUGIN@ && ln -s bucklets/watchmanconfig .watchmanconfig
-```
-
-To build the plugin, issue the following command:
-
-
-```
- buck build plugin
-```
+in the root of Gerrit's source tree to build
The output is created in
```
- buck-out/gen/@PLUGIN@.jar
+ bazel-genfiles/plugins/@PLUGIN@/@PLUGIN@.jar
```
-### 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/@PLUGIN@
-```
-
-The output is created in
-
-```
- buck-out/gen/plugins/@PLUGIN@/@PLUGIN@.jar
-```
-
-This project can be imported into the Eclipse IDE:
+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
```
-