workspace(
    name = "hscloud",
)

load("@bazel_tools//tools/build_defs/repo:git.bzl", "git_repository")
load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive", "http_file")

# Protobuf deps (shared between many rules).
# Load this as early as possible, to avoid a different version being pulled in by deps of something else
http_archive(
    name = "com_google_protobuf",
    sha256 = "8b28fdd45bab62d15db232ec404248901842e5340299a57765e48abe8a80d930",
    strip_prefix = "protobuf-3.20.1",
    urls = ["https://github.com/google/protobuf/archive/v3.20.1.tar.gz"],
)

load("@com_google_protobuf//:protobuf_deps.bzl", "protobuf_deps")

protobuf_deps()

rules_python_version = "0.9.0"
http_archive(
    name = "rules_python",
    sha256 = "5fa3c738d33acca3b97622a13a741129f67ef43f5fdfcec63b29374cc0574c29",
    strip_prefix = "rules_python-{}".format(rules_python_version),
    url = "https://github.com/bazelbuild/rules_python/archive/refs/tags/{}.tar.gz".format(rules_python_version),
)

# Download Go/Gazelle rules
http_archive(
    name = "io_bazel_rules_go",
    sha256 = "69de5c704a05ff37862f7e0f5534d4f479418afc21806c887db544a316f3cb6b",
    urls = [
        "https://mirror.bazel.build/github.com/bazelbuild/rules_go/releases/download/v0.27.0/rules_go-v0.27.0.tar.gz",
        "https://github.com/bazelbuild/rules_go/releases/download/v0.27.0/rules_go-v0.27.0.tar.gz",
    ],
)

http_archive(
    name = "bazel_gazelle",
    sha256 = "62ca106be173579c0a167deb23358fdfe71ffa1e4cfdddf5582af26520f1c66f",
    urls = [
        "https://mirror.bazel.build/github.com/bazelbuild/bazel-gazelle/releases/download/v0.23.0/bazel-gazelle-v0.23.0.tar.gz",
        "https://github.com/bazelbuild/bazel-gazelle/releases/download/v0.23.0/bazel-gazelle-v0.23.0.tar.gz",
    ],
)

# Python rules
# Important: rules_python must be loaded before protobuf (and grpc) because they load an older version otherwise
load("@rules_python//python:pip.bzl", "pip_parse")

pip_parse(
    name = "pydeps",
    requirements_lock = "//third_party/py:requirements.txt",
)

load("@pydeps//:requirements.bzl", "install_deps")

install_deps()

# Setup Go toolchain.
load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains")

go_register_toolchains(version = "1.17")

# IMPORTANT: match protobuf version above with the one loaded by grpc
http_archive(
    name = "com_github_grpc_grpc",
    sha256 = "419dba362eaf8f1d36849ceee17c3e2ff8ff12ac666b42d3ff02a164ebe090e9",
    strip_prefix = "grpc-1.30.0",
    urls = ["https://github.com/grpc/grpc/archive/v1.30.0.tar.gz"],
)

# Load grpc deps after Go, to prevent overriding Go toolchains/SDK.
load("@com_github_grpc_grpc//bazel:grpc_deps.bzl", "grpc_deps")

grpc_deps()

load("@com_github_grpc_grpc//bazel:grpc_extra_deps.bzl", "grpc_extra_deps")

grpc_extra_deps()

load("@io_bazel_rules_go//go:deps.bzl", "go_rules_dependencies")

go_rules_dependencies()

# gazelle:repository_macro third_party/go/repositories.bzl%go_repositories
load("@bazel_gazelle//:deps.bzl", "gazelle_dependencies", "go_repository")

# Force newer version of golang.org/x/crypto that gazelle_dependencies would
# usually get.
go_repository(
    name = "org_golang_x_crypto",
    build_naming_convention = "go_default_library",
    importpath = "golang.org/x/crypto",
    sum = "h1:7I4JAnoQBe7ZtJcBaYHi5UtiO8tQHbUSXxL+pnGRANg=",
    version = "v0.0.0-20210921155107-089bfa567519",
)

gazelle_dependencies()

# Load Go third-party packages.
load("//third_party/go:repositories.bzl", "go_repositories")

go_repositories()

# Docker rules

http_archive(
    name = "io_bazel_rules_docker",
    sha256 = "59d5b42ac315e7eadffa944e86e90c2990110a1c8075f1cd145f487e999d22b3",
    strip_prefix = "rules_docker-0.17.0",
    urls = ["https://github.com/bazelbuild/rules_docker/releases/download/v0.17.0/rules_docker-v0.17.0.tar.gz"],
)

load("@io_bazel_rules_docker//toolchains/docker:toolchain.bzl", docker_toolchain_configure = "toolchain_configure")

# This forces the use of Docker $HOME/.docker configuration.
docker_toolchain_configure(
    name = "docker_config",
    client_config = "",
    docker_path = "/usr/bin/docker",
)

load(
    "@io_bazel_rules_docker//repositories:repositories.bzl",
    container_repositories = "repositories",
)

container_repositories()

# Docker base images

load("@io_bazel_rules_docker//container:container.bzl", "container_pull")

container_pull(
    name = "prodimage-bionic",
    digest = "sha256:1cd1f84169b8e1414a5d511b42909f2d540831c67b6799ae9af8cd6a80d75b5f",
    registry = "registry.k0.hswaw.net",
    repository = "q3k/prodimage",
    tag = "20190822-1227",
)

container_pull(
    name = "prodimage-focal",
    digest = "sha256:fb6159a3ddf2f783092f1169792d1fba6f108714026ad2aa08204e8356825a13",
    registry = "registry.k0.hswaw.net",
    repository = "q3k/prodimage-focal",
    tag = "20211214-0108",
)

container_pull(
    name = "gerrit-3.3.2",
    digest = "sha256:f7fc8b749706f38475f94191117091973914a8f084e69518deff7dbc9c2c557d",
    registry = "index.docker.io",
    repository = "gerritcodereview/gerrit",
    tag = "3.3.2-ubuntu20",
)

# third_party/factorio
load("//third_party/factorio:factorio.bzl", "factorio_repositories")

factorio_repositories()

# For devtools/gerrit/gerrit-oauth-provider and gerrit OWNERS plugin

git_repository(
    name = "com_googlesource_gerrit_bazlets",
    commit = "a511f3c90129d7de7ae67c0637001162980c08d5",
    remote = "https://gerrit.googlesource.com/bazlets",
    shallow_since = "1606931369 -0600",
)

load("@com_googlesource_gerrit_bazlets//:gerrit_api.bzl", "gerrit_api")

gerrit_api()

load("//devtools/gerrit/gerrit-oauth-provider:external_plugin_deps.bzl", gerrit_oauth_deps = "external_plugin_deps")

gerrit_oauth_deps(omit_commons_codec = False)

# Gerrit 3.3.2 built by q3k, backported with fix for 'empty reviewers column' bug.
# See: https://bugs.chromium.org/p/gerrit/issues/detail?id=13899
# Override can be removed once we update to > 3.3.2, as the fix for this is
# pending for the 3.3 branch.
#
# Built from v3.3.2 tag at df0507df5917fd78af01aee2495b2663530d52d1
# Cherry-picked fix from 8731af3ae785efe9ecff7f3d04302b6b01c4fc0b
# Resulted in commit 5949bfb86e62a32a95293e339ed86bfe52a283e9
# Built against Java 8:
#     bazel build --java_toolchain //tools:error_prone_warnings_toolchain :release
#
http_file(
    name = "org_q3k_gerrit_3_3_2_backport",
    downloaded_file_path = "gerrit.war",
    sha256 = "d1839d691a8534f4ccb27bed9a98281e45972fbebec50d004cecd4d5da2b15a6",
    urls = [
        "https://object.ceph-waw3.hswaw.net/q3k-personal/d1839d691a8534f4ccb27bed9a98281e45972fbebec50d004cecd4d5da2b15a6.war",
    ],
)

# minecraft spigot/bukkit deps
# this uses rules_jvm_external vs gerrit's maven_jar because we need SNAPSHOT support

http_archive(
    name = "io_grpc_grpc_java",
    sha256 = "446ad7a2e85bbd05406dbf95232c7c49ed90de83b3b60cb2048b0c4c9f254d29",
    strip_prefix = "grpc-java-1.29.0",
    url = "https://github.com/grpc/grpc-java/archive/v1.29.0.zip",
)

RULES_JVM_EXTERNAL_TAG = "3.0"

RULES_JVM_EXTERNAL_SHA = "62133c125bf4109dfd9d2af64830208356ce4ef8b165a6ef15bbff7460b35c3a"

http_archive(
    name = "rules_jvm_external",
    sha256 = RULES_JVM_EXTERNAL_SHA,
    strip_prefix = "rules_jvm_external-%s" % RULES_JVM_EXTERNAL_TAG,
    url = "https://github.com/bazelbuild/rules_jvm_external/archive/%s.zip" % RULES_JVM_EXTERNAL_TAG,
)

load("@rules_jvm_external//:defs.bzl", "maven_install")
load("@io_grpc_grpc_java//:repositories.bzl", "IO_GRPC_GRPC_JAVA_ARTIFACTS")
load("@io_grpc_grpc_java//:repositories.bzl", "IO_GRPC_GRPC_JAVA_OVERRIDE_TARGETS")

maven_install(
    artifacts = [
        "org.spigotmc:spigot-api:1.15.2-R0.1-20200624.001023-124",
        "io.grpc:grpc-netty-shaded:1.29.0",
        "io.grpc:grpc-services:1.29.0",
    ] + IO_GRPC_GRPC_JAVA_ARTIFACTS,
    generate_compat_repositories = True,
    maven_install_json = "//third_party/java:maven_install.json",
    override_targets = IO_GRPC_GRPC_JAVA_OVERRIDE_TARGETS,
    repositories = [
        "https://hub.spigotmc.org/nexus/content/repositories/snapshots",
        "https://oss.sonatype.org/content/repositories/snapshots",
        "https://repo1.maven.org/maven2/",
    ],
)

load("@maven//:defs.bzl", "pinned_maven_install")

pinned_maven_install()

load("@maven//:compat.bzl", "compat_repositories")

compat_repositories()

load("@io_grpc_grpc_java//:repositories.bzl", "grpc_java_repositories")

grpc_java_repositories()

# Gerrit OWNERS plugins external repositories

git_repository(
    name = "com_googlesource_gerrit_plugin_owners",
    commit = "17817c9e319073c03513f9d5177b6142b8fd567b",
    remote = "https://gerrit.googlesource.com/plugins/owners/",
    shallow_since = "1593642470 +0200",
)

load("@com_googlesource_gerrit_plugin_owners//:external_plugin_deps_standalone.bzl", gerrit_owners_deps = "external_plugin_deps_standalone")

gerrit_owners_deps()

# Go image repos for Docker

load("@io_bazel_rules_docker//go:image.bzl", go_image_repositories = "repositories")

go_image_repositories()

# oniguruma, with build from //third_party/oniguruma

http_archive(
    name = "com_github_kkos_oniguruma",
    build_file = "@hscloud//third_party/oniguruma:BUILD.external",
    sha256 = "d33c849d1672af227944878cefe0a8fcf26fc62bedba32aa517f2f63c314a99e",
    strip_prefix = "onig-6.9.5",
    urls = ["https://github.com/kkos/oniguruma/releases/download/v6.9.5_rev1/onig-6.9.5_rev1.tar.gz"],
)

# jq, with build from //third_party/jq

http_archive(
    name = "com_github_stedolan_jq",
    build_file = "@hscloud//third_party/jq:BUILD.external",
    sha256 = "5de8c8e29aaa3fb9cc6b47bb27299f271354ebb72514e3accadc7d38b5bbaa72",
    strip_prefix = "jq-1.6",
    urls = ["https://github.com/stedolan/jq/releases/download/jq-1.6/jq-1.6.tar.gz"],
)

# //hswaw/site deps.
load("//hswaw/site:deps.bzl", "hswaw_site_deps")
hswaw_site_deps()

# noVNC, used by //dc/drackvm.
http_archive(
    name = "com_github_novnc_novnc",
    build_file_content = """
filegroup(
    name = "distfiles",
    srcs = [
        "vnc.html",
    ] + glob([
        "app/**",
        "core/**",
        "vendor/**",
    ]),
    visibility = ["//visibility:public"],
)
""",
    sha256 = "2c972cca34376dfd2a54939e7e571e466511bf592d03e838440b3c8868441eaf",
    strip_prefix = "noVNC-1.3.0-beta",
    urls = ["https://github.com/novnc/noVNC/archive/refs/tags/v1.3.0-beta.tar.gz"],
)

# temporarily use upstream binary, see //cluster/tools/BUILD
http_file(
    name = "calicoctl_3_15",
    downloaded_file_path = "calicoctl",
    urls = ["https://github.com/projectcalico/calicoctl/releases/download/v3.15.5/calicoctl"],
    sha256 = "f49e9e8d25108f7f22d5a51c756b2fe40cbe36347ad297e31a767376172f2845",
    executable = True,
)
