Bazel: Switch to using bazlets

We prefer to consume maven_jar custom rule from bazlets repository, for
the same reasons as in Gerrit project:

* caching atifacts across different clones and projects
* exposing source classifiers and neverlink artifact

Change-Id: Ia560a68136186025926649f6985608fcf326082f
diff --git a/WORKSPACE b/WORKSPACE
index 1e34b35..065379c 100644
--- a/WORKSPACE
+++ b/WORKSPACE
@@ -1,3 +1,10 @@
+workspace(name = "gitiles")
+load("//tools:bazlets.bzl", "load_bazlets")
+load_bazlets(commit = "3afbeab55ece585dbfc7a980bf7214b24ddbbe86")
+load("@com_googlesource_gerrit_bazlets//tools:maven_jar.bzl",
+     "maven_jar",
+     "GERRIT")
+
 maven_jar(
     name = "commons_lang",
     artifact = "org.apache.commons:commons-lang3:3.1",
@@ -26,12 +33,13 @@
     name = "jsr305",
     artifact = "com.google.code.findbugs:jsr305:3.0.0",
     sha1 = "5871fb60dc68d67da54a663c3fd636a10a532948",
+    attach_source = False,
 )
 
 maven_jar(
     name = "prettify",
     artifact = "prettify:java-prettify:1.2.1",
-    repository = "http://gerrit-maven.storage.googleapis.com/",
+    repository = GERRIT,
     sha1 = "29ad8d072f9d0b83d1a2e9aa6ccb0905e6d543c6",
 )
 
@@ -140,6 +148,7 @@
     name = "tukaani_xz",
     artifact = "org.tukaani:xz:1.4",
     sha1 = "18a9a2ce6abf32ea1b5fd31dae5210ad93f4e5e3",
+    attach_source = False,
 )
 
 maven_jar(
diff --git a/gitiles-servlet/BUILD b/gitiles-servlet/BUILD
index ff33933..e19f329 100644
--- a/gitiles-servlet/BUILD
+++ b/gitiles-servlet/BUILD
@@ -51,7 +51,7 @@
     ],
 )
 
-load("//gitiles-servlet:junit.bzl", "junit_tests")
+load("@com_googlesource_gerrit_bazlets//tools:junit.bzl", "junit_tests")
 
 junit_tests(
     name = "ServletTests",
diff --git a/gitiles-servlet/junit.bzl b/gitiles-servlet/junit.bzl
deleted file mode 100644
index ee79637..0000000
--- a/gitiles-servlet/junit.bzl
+++ /dev/null
@@ -1,60 +0,0 @@
-# skylark rule to generate a Junit4 TestSuite
-# Assumes srcs are all .java Test files
-# Assumes junit4 is already added to deps by the user.
-
-# See https://github.com/bazelbuild/bazel/issues/1017 for background.
-
-_OUTPUT = """import org.junit.runners.Suite;
-import org.junit.runner.RunWith;
-
-@RunWith(Suite.class)
-@Suite.SuiteClasses({%s})
-public class %s {}
-"""
-
-_PREFIXES = ("org", "com", "edu")
-
-def _SafeIndex(l, val):
-    for i, v in enumerate(l):
-        if val == v:
-            return i
-    return -1
-
-def _AsClassName(fname):
-    fname = [x.path for x in fname.files][0]
-    toks = fname[:-5].split("/")
-    findex = -1
-    for s in _PREFIXES:
-        findex = _SafeIndex(toks, s)
-        if findex != -1:
-            break
-    if findex == -1:
-        fail("%s does not contain any of %s",
-                         fname, _PREFIXES)
-    return ".".join(toks[findex:]) + ".class"
-
-def _impl(ctx):
-    classes = ",".join(
-        [_AsClassName(x) for x in ctx.attr.srcs])
-    ctx.file_action(output=ctx.outputs.out, content=_OUTPUT % (
-            classes, ctx.attr.outname))
-
-_GenSuite = rule(
-    attrs = {
-        "srcs": attr.label_list(allow_files = True),
-        "outname": attr.string(),
-    },
-    outputs = {"out": "%{name}.java"},
-    implementation = _impl,
-)
-
-def junit_tests(name, srcs, **kwargs):
-    s_name = name + "TestSuite"
-    j_name = s_name + ".java",
-    _GenSuite(name=s_name,
-              srcs=srcs,
-              outname=s_name)
-    native.java_test(name=name,
-                     test_class=s_name,
-                     srcs = srcs + [":"+s_name],
-                     **kwargs)
diff --git a/tools/BUILD b/tools/BUILD
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/tools/BUILD
@@ -0,0 +1 @@
+
diff --git a/tools/bazlets.bzl b/tools/bazlets.bzl
new file mode 100644
index 0000000..e14e488
--- /dev/null
+++ b/tools/bazlets.bzl
@@ -0,0 +1,17 @@
+NAME = "com_googlesource_gerrit_bazlets"
+
+def load_bazlets(
+    commit,
+    local_path = None
+  ):
+  if not local_path:
+      native.git_repository(
+          name = NAME,
+          remote = "https://gerrit.googlesource.com/bazlets",
+          commit = commit,
+      )
+  else:
+      native.local_repository(
+          name = NAME,
+          path = local_path,
+      )