Bazel: Fix lint warning flagged by buildifier Buildifier warns about duplicate rule name gitiles: BUILD:24: duplicated-name: A rule with name "gitiles" was already found on line 4. Even if it's valid for Blaze, this may confuse other tools. Please rename it and use different names. Refactor the build and create gitiles-servlet resource jar in advance. In this case we do not need to create intermediate plugin artifact any more and can merge into the final artifact the gitiles-servlet resource archive. Change-Id: I58f7389725eb0fb1862fc35b4222f7757384d1dc
diff --git a/BUILD b/BUILD index 116cd88..7f19fc3 100644 --- a/BUILD +++ b/BUILD
@@ -1,25 +1,6 @@ +load("//tools/bzl:genrule2.bzl", "genrule2") load("//tools/bzl:plugin.bzl", "gerrit_plugin") -genrule( - name = "gitiles", - srcs = [ - ":gitiles__base", - "@gitiles-servlet//jar", - ], - outs = ["gitiles.jar"], - cmd = " && ".join([ - "ROOT=$$PWD", - "TMP=$$(mktemp -d || mktemp -d -t bazel-tmp)", - "cp $(location :gitiles__base) $@", - "chmod +w $@", - "unzip -qd $$TMP $(location @gitiles-servlet//jar) \"com/google/gitiles/static/*\"", - "cd $$TMP/com/google/gitiles", - "mv static +static", - "zip -Drq $$ROOT/$@ -g . -i \"+static/*\"", - ]), - visibility = ["//plugins:__subpackages__"], -) - gerrit_plugin( name = "gitiles", srcs = glob(["src/main/java/**/*.java"]), @@ -33,11 +14,21 @@ "Gerrit-HttpStaticPrefix: +static", "Gerrit-HttpDocumentationPrefix: +Documentation", ], + resource_jars = [":gitiles-servlet-resources"], resources = glob(["src/main/resources/**/*"]), - target_suffix = "__base", - deps = [ - ":gitiles__plugin_deps", - ], + deps = [":gitiles__plugin_deps"], +) + +genrule2( + name = "gitiles-servlet-resources", + srcs = ["@gitiles-servlet//jar"], + outs = ["gitiles-servlet-resources.jar"], + cmd = " && ".join([ + "unzip -qd $$TMP $(location @gitiles-servlet//jar) \"com/google/gitiles/static/*\"", + "cd $$TMP/com/google/gitiles", + "mv static +static", + "zip -qr $$ROOT/$@ .", + ]), ) java_library(
diff --git a/tools/bzl/genrule2.bzl b/tools/bzl/genrule2.bzl new file mode 100644 index 0000000..0cc3bc6 --- /dev/null +++ b/tools/bzl/genrule2.bzl
@@ -0,0 +1,6 @@ +load( + "@com_googlesource_gerrit_bazlets//tools:genrule2.bzl", + _genrule2 = "genrule2", +) + +genrule2 = _genrule2