Bazel: Don't ship test dependencies in plugin artifact
Adding test dependencies to the EXTERNAL_DEPS constant ends up in
shipping all transitive test dependencies: easymock, powermock and
friends in the plugin artifact. To rectify split the constant in
two and only add test dependencies to the test rules.
Change-Id: Ieac92ef9c56cca98e6c91bf69ea60a66ebd0b31b
diff --git a/BUILD b/BUILD
index b52c2c1..548e6a8 100644
--- a/BUILD
+++ b/BUILD
@@ -1,6 +1,6 @@
load("//tools:genrule2.bzl", "genrule2")
load("//tools/bzl:plugin.bzl", "PLUGIN_TEST_DEPS")
-load("//owners-common:common.bzl", "EXTERNAL_DEPS")
+load("//owners-common:common.bzl", "EXTERNAL_DEPS", "EXTERNAL_TEST_DEPS")
genrule2(
name = "all",
@@ -21,7 +21,7 @@
name = "owners_classpath_deps",
testonly = 1,
visibility = ["//visibility:public"],
- exports = EXTERNAL_DEPS + PLUGIN_TEST_DEPS + [
+ exports = EXTERNAL_DEPS + EXTERNAL_TEST_DEPS + PLUGIN_TEST_DEPS + [
"//owners:owners__plugin",
"//owners-autoassign:owners-autoassign__plugin",
"//owners-common:owners-common__plugin",
diff --git a/owners-common/BUILD b/owners-common/BUILD
index e2825d5..0f12783 100644
--- a/owners-common/BUILD
+++ b/owners-common/BUILD
@@ -1,6 +1,6 @@
load("//tools/bzl:junit.bzl", "junit_tests")
load("//tools/bzl:plugin.bzl", "PLUGIN_DEPS", "PLUGIN_DEPS_NEVERLINK", "PLUGIN_TEST_DEPS", "gerrit_plugin")
-load("//owners-common:common.bzl", "EXTERNAL_DEPS")
+load("//owners-common:common.bzl", "EXTERNAL_DEPS", "EXTERNAL_TEST_DEPS")
java_library(
name = "owners-common",
@@ -21,7 +21,7 @@
name = "test",
testonly = 1,
srcs = glob(["src/test/java/**/*.java"]),
- deps = PLUGIN_DEPS + PLUGIN_TEST_DEPS + [
+ deps = EXTERNAL_TEST_DEPS + PLUGIN_DEPS + PLUGIN_TEST_DEPS + [
":owners-common",
],
)
diff --git a/owners-common/common.bzl b/owners-common/common.bzl
index eba5f20..c571145 100644
--- a/owners-common/common.bzl
+++ b/owners-common/common.bzl
@@ -4,6 +4,9 @@
"@jackson-annotations//jar",
"@jackson-dataformat-yaml//jar",
"@snakeyaml//jar",
+]
+
+EXTERNAL_TEST_DEPS = [
"@easymock//jar",
"@powermock-module-junit4//jar",
"@powermock-module-junit4-common//jar",
diff --git a/owners/BUILD b/owners/BUILD
index aa34bc9..3acc05b 100644
--- a/owners/BUILD
+++ b/owners/BUILD
@@ -1,6 +1,6 @@
-load("//tools/bzl:plugin.bzl", "PLUGIN_TEST_DEPS", "PLUGIN_DEPS_NEVERLINK", "gerrit_plugin")
+load("//tools/bzl:plugin.bzl", "PLUGIN_DEPS_NEVERLINK", "PLUGIN_TEST_DEPS", "gerrit_plugin")
load("//lib/prolog:prolog.bzl", "prolog_cafe_library")
-load("//owners-common:common.bzl", "EXTERNAL_DEPS")
+load("//owners-common:common.bzl", "EXTERNAL_DEPS", "EXTERNAL_TEST_DEPS")
PROLOG_PREDICATES = glob(["src/main/java/gerrit_owners/**/*.java"]) + [
"src/main/java/com/googlesource/gerrit/owners/OwnersStoredValues.java",
@@ -50,5 +50,5 @@
name = "owners__plugin_test_deps",
testonly = 1,
visibility = ["//visibility:public"],
- exports = EXTERNAL_DEPS + PLUGIN_TEST_DEPS,
+ exports = EXTERNAL_DEPS + EXTERNAL_TEST_DEPS + PLUGIN_TEST_DEPS,
)