Split monolithic plugin target across java packages It's a left over from GWT plugin era to produce single target library for all plugin sources. Now, that GWT UI was removed, this restriction does not exist any more. Splitting the Bazel packages across java packages has a number of advantages: * Reduce re-build time * Prevention of unwanted interdependences between java packages Note though, that gerrit_plugin() still doesn't support empty source set, so that module package of this plugin is still provided as source set. Also-by: David Ostrovsky <david@ostrovsky.org> Signed-off-by: Edwin Kempin <ekempin@google.com> Change-Id: I2886bc319ce31821118416d8b9d8f8e087756b30
diff --git a/BUILD b/BUILD index b778c1d..506abaa 100644 --- a/BUILD +++ b/BUILD
@@ -15,7 +15,7 @@ gerrit_plugin( name = "code-owners", - srcs = glob(["java/com/google/gerrit/plugins/codeowners/**/*.java"]), + srcs = glob(["java/com/google/gerrit/plugins/codeowners/module/*.java"]), manifest_entries = [ "Gerrit-PluginName: code-owners", "Gerrit-Module: com.google.gerrit.plugins.codeowners.module.Module", @@ -24,7 +24,13 @@ resource_jars = [":code-owners-fe-static"], resource_strip_prefix = "plugins/code-owners/resources", resources = glob(["resources/**/*"]), - deps = ["//plugins/code-owners/proto:owners_metadata_java_proto"], + deps = [ + "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/api/impl", + "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/backend", + "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/common", + "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/restapi", + "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/validation", + ], ) polygerrit_plugin(
diff --git a/java/com/google/gerrit/plugins/codeowners/acceptance/BUILD b/java/com/google/gerrit/plugins/codeowners/acceptance/BUILD index bd5bc0b..65883e0 100644 --- a/java/com/google/gerrit/plugins/codeowners/acceptance/BUILD +++ b/java/com/google/gerrit/plugins/codeowners/acceptance/BUILD
@@ -12,6 +12,9 @@ "//java/com/google/gerrit/acceptance:lib", "//plugins/code-owners:code-owners__plugin", "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/acceptance/testsuite", + "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/api/impl", + "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/backend", "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/testing/backend:testutil", + "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/util", ], )
diff --git a/java/com/google/gerrit/plugins/codeowners/acceptance/testsuite/BUILD b/java/com/google/gerrit/plugins/codeowners/acceptance/testsuite/BUILD index b08b998..2660baa 100644 --- a/java/com/google/gerrit/plugins/codeowners/acceptance/testsuite/BUILD +++ b/java/com/google/gerrit/plugins/codeowners/acceptance/testsuite/BUILD
@@ -10,6 +10,7 @@ srcs = glob(["*.java"]), deps = [ "//java/com/google/gerrit/acceptance:lib", - "//plugins/code-owners:code-owners__plugin", + "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/backend", + "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/util", ], )
diff --git a/java/com/google/gerrit/plugins/codeowners/api/BUILD b/java/com/google/gerrit/plugins/codeowners/api/BUILD new file mode 100644 index 0000000..9ab1591 --- /dev/null +++ b/java/com/google/gerrit/plugins/codeowners/api/BUILD
@@ -0,0 +1,13 @@ +load("@rules_java//java:defs.bzl", "java_library") +load("//tools/bzl:plugin.bzl", "PLUGIN_DEPS_NEVERLINK") + +java_library( + name = "api", + srcs = glob(["*.java"]), + visibility = ["//visibility:public"], + deps = PLUGIN_DEPS_NEVERLINK + [ + "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/backend", + "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/common", + "//plugins/code-owners/proto:owners_metadata_java_proto", + ], +)
diff --git a/java/com/google/gerrit/plugins/codeowners/api/impl/BUILD b/java/com/google/gerrit/plugins/codeowners/api/impl/BUILD new file mode 100644 index 0000000..0fe77d6 --- /dev/null +++ b/java/com/google/gerrit/plugins/codeowners/api/impl/BUILD
@@ -0,0 +1,12 @@ +load("@rules_java//java:defs.bzl", "java_library") +load("//tools/bzl:plugin.bzl", "PLUGIN_DEPS_NEVERLINK") + +java_library( + name = "impl", + srcs = glob(["*.java"]), + visibility = ["//visibility:public"], + deps = PLUGIN_DEPS_NEVERLINK + [ + "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/api", + "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/restapi", + ], +)
diff --git a/java/com/google/gerrit/plugins/codeowners/backend/BUILD b/java/com/google/gerrit/plugins/codeowners/backend/BUILD new file mode 100644 index 0000000..5aefae5 --- /dev/null +++ b/java/com/google/gerrit/plugins/codeowners/backend/BUILD
@@ -0,0 +1,13 @@ +load("@rules_java//java:defs.bzl", "java_library") +load("//tools/bzl:plugin.bzl", "PLUGIN_DEPS_NEVERLINK") + +java_library( + name = "backend", + srcs = glob(["**/*.java"]), + visibility = ["//visibility:public"], + deps = PLUGIN_DEPS_NEVERLINK + [ + "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/common", + "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/util", + "//plugins/code-owners/proto:owners_metadata_java_proto", + ], +)
diff --git a/java/com/google/gerrit/plugins/codeowners/common/BUILD b/java/com/google/gerrit/plugins/codeowners/common/BUILD new file mode 100644 index 0000000..d4a7385 --- /dev/null +++ b/java/com/google/gerrit/plugins/codeowners/common/BUILD
@@ -0,0 +1,11 @@ +load("@rules_java//java:defs.bzl", "java_library") +load("//tools/bzl:plugin.bzl", "PLUGIN_DEPS_NEVERLINK") + +java_library( + name = "common", + srcs = glob(["*.java"]), + visibility = ["//visibility:public"], + deps = PLUGIN_DEPS_NEVERLINK + [ + "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/util", + ], +)
diff --git a/java/com/google/gerrit/plugins/codeowners/restapi/BUILD b/java/com/google/gerrit/plugins/codeowners/restapi/BUILD new file mode 100644 index 0000000..e938a4c --- /dev/null +++ b/java/com/google/gerrit/plugins/codeowners/restapi/BUILD
@@ -0,0 +1,16 @@ +load("@rules_java//java:defs.bzl", "java_library") +load("//tools/bzl:plugin.bzl", "PLUGIN_DEPS_NEVERLINK") + +java_library( + name = "restapi", + srcs = glob(["*.java"]), + visibility = ["//visibility:public"], + deps = PLUGIN_DEPS_NEVERLINK + [ + "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/api", + "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/backend", + "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/common", + "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/util", + "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/validation", + "//plugins/code-owners/proto:owners_metadata_java_proto", + ], +)
diff --git a/java/com/google/gerrit/plugins/codeowners/testing/BUILD b/java/com/google/gerrit/plugins/codeowners/testing/BUILD index 9277751..cff6196 100644 --- a/java/com/google/gerrit/plugins/codeowners/testing/BUILD +++ b/java/com/google/gerrit/plugins/codeowners/testing/BUILD
@@ -15,6 +15,9 @@ "//lib:guava", "//lib/truth", "//lib/truth:truth-java8-extension", - "//plugins/code-owners:code-owners__plugin", + "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/api", + "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/backend", + "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/common", + "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/restapi", ], )
diff --git a/java/com/google/gerrit/plugins/codeowners/testing/backend/BUILD b/java/com/google/gerrit/plugins/codeowners/testing/backend/BUILD index 6c29233..f4392f9 100644 --- a/java/com/google/gerrit/plugins/codeowners/testing/backend/BUILD +++ b/java/com/google/gerrit/plugins/codeowners/testing/backend/BUILD
@@ -15,6 +15,7 @@ "//lib:jgit-junit", "//lib/guice", "//lib/guice:guice-assistedinject", - "//plugins/code-owners:code-owners__plugin", + "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/backend", + "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/util", ], )
diff --git a/java/com/google/gerrit/plugins/codeowners/util/BUILD b/java/com/google/gerrit/plugins/codeowners/util/BUILD new file mode 100644 index 0000000..1ea5031 --- /dev/null +++ b/java/com/google/gerrit/plugins/codeowners/util/BUILD
@@ -0,0 +1,7 @@ +load("@rules_java//java:defs.bzl", "java_library") + +java_library( + name = "util", + srcs = glob(["*.java"]), + visibility = ["//visibility:public"], +)
diff --git a/java/com/google/gerrit/plugins/codeowners/validation/BUILD b/java/com/google/gerrit/plugins/codeowners/validation/BUILD new file mode 100644 index 0000000..ba32dc0 --- /dev/null +++ b/java/com/google/gerrit/plugins/codeowners/validation/BUILD
@@ -0,0 +1,13 @@ +load("@rules_java//java:defs.bzl", "java_library") +load("//tools/bzl:plugin.bzl", "PLUGIN_DEPS_NEVERLINK") + +java_library( + name = "validation", + srcs = glob(["*.java"]), + visibility = ["//visibility:public"], + deps = PLUGIN_DEPS_NEVERLINK + [ + "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/backend", + "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/common", + "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/util", + ], +)
diff --git a/javatests/com/google/gerrit/plugins/codeowners/acceptance/api/BUILD b/javatests/com/google/gerrit/plugins/codeowners/acceptance/api/BUILD index 5fb0fdf..cccf418 100644 --- a/javatests/com/google/gerrit/plugins/codeowners/acceptance/api/BUILD +++ b/javatests/com/google/gerrit/plugins/codeowners/acceptance/api/BUILD
@@ -10,10 +10,16 @@ group = f[:f.index(".")], deps = [ "testbases", - "//plugins/code-owners:code-owners__plugin", "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/acceptance", "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/acceptance/testsuite", + "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/api", + "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/api/impl", + "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/backend", + "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/common", + "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/restapi", "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/testing", + "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/util", + "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/validation", ], ) for f in glob( ["*IT.java"], @@ -31,9 +37,11 @@ "//java/com/google/gerrit/server", "//lib:guava", "//lib/guice", - "//plugins/code-owners:code-owners__plugin", "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/acceptance", "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/acceptance/testsuite", + "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/api", + "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/backend", + "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/restapi", "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/testing", ], )
diff --git a/javatests/com/google/gerrit/plugins/codeowners/acceptance/restapi/BUILD b/javatests/com/google/gerrit/plugins/codeowners/acceptance/restapi/BUILD index 42c221e..82f4772 100644 --- a/javatests/com/google/gerrit/plugins/codeowners/acceptance/restapi/BUILD +++ b/javatests/com/google/gerrit/plugins/codeowners/acceptance/restapi/BUILD
@@ -14,10 +14,12 @@ deps = [ "testbases", "//javatests/com/google/gerrit/acceptance/rest/util", - "//plugins/code-owners:code-owners__plugin", "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/acceptance", "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/acceptance/testsuite", + "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/api", + "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/backend", "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/testing", + "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/util", ], ) @@ -30,8 +32,8 @@ "//lib:gson", "//lib:guava", "//lib/guice", - "//plugins/code-owners:code-owners__plugin", "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/acceptance", + "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/api", "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/testing", ], )
diff --git a/javatests/com/google/gerrit/plugins/codeowners/acceptance/testsuite/BUILD b/javatests/com/google/gerrit/plugins/codeowners/acceptance/testsuite/BUILD index bcdaec9..e6471af 100644 --- a/javatests/com/google/gerrit/plugins/codeowners/acceptance/testsuite/BUILD +++ b/javatests/com/google/gerrit/plugins/codeowners/acceptance/testsuite/BUILD
@@ -6,9 +6,10 @@ srcs = glob(["*Test.java"]), group = "code_owners_testsuite", deps = [ - "//plugins/code-owners:code-owners__plugin", "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/acceptance", "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/acceptance/testsuite", + "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/backend", + "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/common", "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/testing", ], )
diff --git a/javatests/com/google/gerrit/plugins/codeowners/backend/BUILD b/javatests/com/google/gerrit/plugins/codeowners/backend/BUILD index df2542e..cc2d70a 100644 --- a/javatests/com/google/gerrit/plugins/codeowners/backend/BUILD +++ b/javatests/com/google/gerrit/plugins/codeowners/backend/BUILD
@@ -10,11 +10,13 @@ group = f[:f.index(".")], deps = [ ":testbases", - "//plugins/code-owners:code-owners__plugin", "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/acceptance", "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/acceptance/testsuite", + "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/backend", + "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/common", "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/testing", "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/testing/backend:testutil", + "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/util", ], ) for f in glob( ["*Test.java"], @@ -38,8 +40,8 @@ "//lib:jgit", "//lib/truth", "//lib/truth:truth-java8-extension", - "//plugins/code-owners:code-owners__plugin", "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/acceptance", + "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/backend", "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/testing", "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/testing/backend:testutil", ],
diff --git a/javatests/com/google/gerrit/plugins/codeowners/backend/config/BUILD b/javatests/com/google/gerrit/plugins/codeowners/backend/config/BUILD index 7f1985a..9dc820d 100644 --- a/javatests/com/google/gerrit/plugins/codeowners/backend/config/BUILD +++ b/javatests/com/google/gerrit/plugins/codeowners/backend/config/BUILD
@@ -13,8 +13,9 @@ group = "config", deps = [ ":testbases", - "//plugins/code-owners:code-owners__plugin", "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/acceptance", + "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/backend", + "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/common", "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/testing", ], ) @@ -29,8 +30,8 @@ "//lib:guava", "//lib:jgit", "//lib/truth", - "//plugins/code-owners:code-owners__plugin", "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/acceptance", + "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/backend", "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/testing", ], )
diff --git a/javatests/com/google/gerrit/plugins/codeowners/backend/findowners/BUILD b/javatests/com/google/gerrit/plugins/codeowners/backend/findowners/BUILD index 6c0751b..30bd6b2 100644 --- a/javatests/com/google/gerrit/plugins/codeowners/backend/findowners/BUILD +++ b/javatests/com/google/gerrit/plugins/codeowners/backend/findowners/BUILD
@@ -4,8 +4,8 @@ srcs = glob(["*Test.java"]), group = "findowners_backend", deps = [ - "//plugins/code-owners:code-owners__plugin", "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/acceptance", + "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/backend", "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/testing", "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/testing/backend:testutil", "//plugins/code-owners/javatests/com/google/gerrit/plugins/codeowners/backend:testbases",
diff --git a/javatests/com/google/gerrit/plugins/codeowners/backend/proto/BUILD b/javatests/com/google/gerrit/plugins/codeowners/backend/proto/BUILD index f121487..fbd1ac9 100644 --- a/javatests/com/google/gerrit/plugins/codeowners/backend/proto/BUILD +++ b/javatests/com/google/gerrit/plugins/codeowners/backend/proto/BUILD
@@ -5,8 +5,8 @@ group = "proto_backend", deps = [ "//lib:protobuf", - "//plugins/code-owners:code-owners__plugin", "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/acceptance", + "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/backend", "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/testing", "//plugins/code-owners/javatests/com/google/gerrit/plugins/codeowners/backend:testbases", ],
diff --git a/javatests/com/google/gerrit/plugins/codeowners/restapi/BUILD b/javatests/com/google/gerrit/plugins/codeowners/restapi/BUILD index 2c509ff..03bef60 100644 --- a/javatests/com/google/gerrit/plugins/codeowners/restapi/BUILD +++ b/javatests/com/google/gerrit/plugins/codeowners/restapi/BUILD
@@ -4,9 +4,12 @@ srcs = glob(["*Test.java"]), group = "restapi", deps = [ - "//plugins/code-owners:code-owners__plugin", "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/acceptance", "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/acceptance/testsuite", + "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/api", + "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/backend", + "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/common", + "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/restapi", "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/testing", ], )
diff --git a/javatests/com/google/gerrit/plugins/codeowners/util/BUILD b/javatests/com/google/gerrit/plugins/codeowners/util/BUILD index 40ae290..623a675 100644 --- a/javatests/com/google/gerrit/plugins/codeowners/util/BUILD +++ b/javatests/com/google/gerrit/plugins/codeowners/util/BUILD
@@ -4,7 +4,7 @@ srcs = glob(["*Test.java"]), group = "util", deps = [ - "//plugins/code-owners:code-owners__plugin", "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/acceptance", + "//plugins/code-owners/java/com/google/gerrit/plugins/codeowners/util", ], )