module(name = "gerrit-high-availability-gcp")

bazel_dep(name = "rules_jvm_external", version = "6.10")
bazel_dep(name = "com_googlesource_gerrit_bazlets")
git_override(
    module_name = "com_googlesource_gerrit_bazlets",
    commit = "fe7c19542f8dc0a5720be3a93dbbdd05551003ec",
    remote = "https://gerrit.googlesource.com/bazlets",
)

GERRIT_API_VERS = "3.13.5"

gerrit_api_version = use_repo_rule("@com_googlesource_gerrit_bazlets//:gerrit_api_version.bzl", "gerrit_api_version")

gerrit_api_version(
    name = "gerrit_api_version",
    version = GERRIT_API_VERS,
    visibility = ["//visibility:public"],
)

maven = use_extension("@rules_jvm_external//:extensions.bzl", "maven")
maven.install(
    name = "external_plugin_deps",
    artifacts = [
        "com.google.gerrit:gerrit-plugin-api:" + GERRIT_API_VERS,
        "com.google.gerrit:gerrit-acceptance-framework:" + GERRIT_API_VERS,
    ],
    # IMPORTANT:
    # Do NOT set lock_file here.
    #
    # This repository is intentionally shared across plugins and contains
    # only Gerrit-provided APIs (gerrit-plugin-api and acceptance framework)
    # that are provided by Gerrit at runtime and must not be bundled into
    # the plugin JAR.
    #
    # When built in-tree, rules_jvm_external merges maven.install() tags
    # with the same name across all modules. Defining a lock_file for this
    # shared repository in more than one plugin causes multiple lock files
    # to be contributed for the same repository name, which is rejected by
    # rules_jvm_external during module extension evaluation.
    #
    # Plugin runtime dependencies must instead be declared in a
    # plugin-specific repository (e.g. oauth_plugin_deps) that owns
    # its own lock file.
)
use_repo(maven, "external_plugin_deps")

maven.install(
    name = "high-availability-gcp_plugin_deps",
    artifacts = [
        "com.google.cloud:google-cloud-pubsub:1.141.2",
        "io.grpc:grpc-netty-shaded:1.74.0",
        "org.testcontainers:gcloud:1.21.3",
        "org.testcontainers:testcontainers:1.21.3",
    ],
    duplicate_version_warning = "error",
    excluded_artifacts = [
        "org.slf4j:slf4j-api",
        "commons-codec:commons-codec",
        "com.google.guava:failureaccess",
        "com.google.code.gson:gson",
        "org.apache.httpcomponents:httpclient",
        "org.apache.httpcomponents:httpcore",
        "com.google.j2objc:j2objc-annotations",
        "com.google.code.findbugs:jsr305",
        "com.google.protobuf:protobuf-java",
    ],
    fail_if_repin_required = True,
    fail_on_missing_checksum = True,
    fetch_sources = True,
    lock_file = "//:high-availability-gcp_plugin_deps.lock.json",
    repositories = [
        "https://repo1.maven.org/maven2",
    ],
    version_conflict_policy = "pinned",
)
use_repo(maven, "high-availability-gcp_plugin_deps")
