blob: 2bd010b627c8313f4e29c9ead4a9e01a664168be [file] [log] [blame]
load("//:bouncycastle.bzl", "bouncycastle_repos")
load("//:gerrit_api_version.bzl", "gerrit_api_version")
load("//:rules_python.bzl", "rules_python_repos")
load("//tools:maven_jar.bzl", "MAVEN_LOCAL", "MAVEN_CENTRAL", "maven_jar")
"""Bazel rule for building [Gerrit Code Review](https://www.gerritcodereview.com/)
gerrit_api is rule for fetching Gerrit plugin API using Bazel.
"""
def gerrit_api(version = "3.0.15",
plugin_api_sha1 = "fda1d104dbe61efb009d7379775f3406d7eec889",
acceptance_framework_sha1 = "7fee10b950c38df770fc79bd7c183c3d65b7dc6d"):
gerrit_api_version(
name = "gerrit_api_version",
version = version,
)
bouncycastle_repos()
rules_python_repos()
local_repository = version.endswith("-SNAPSHOT")
maven_jar(
name = "gerrit_plugin_api",
artifact = "com.google.gerrit:gerrit-plugin-api:" + version,
sha1 = "" if local_repository else plugin_api_sha1,
repository = MAVEN_LOCAL if local_repository else MAVEN_CENTRAL,
)
maven_jar(
name = "gerrit_acceptance_framework",
artifact = "com.google.gerrit:gerrit-acceptance-framework:" + version,
sha1 = "" if local_repository else acceptance_framework_sha1,
repository = MAVEN_LOCAL if local_repository else MAVEN_CENTRAL,
)
native.bind(
name = "gerrit-plugin-api",
actual = "@gerrit_plugin_api//jar",
)
native.bind(
name = "gerrit-acceptance-framework",
actual = "@gerrit_acceptance_framework//jar",
)
native.bind(
name = "gerrit-plugin-api-neverlink",
actual = "@gerrit_plugin_api//jar:neverlink",
)
native.bind(
name = "gerrit-acceptance-framework-neverlink",
actual = "@gerrit_acceptance_framework//jar:neverlink",
)