blob: 2c9a5cd33dcf434c94456cae55c8284772a01ec1 [file] [log] [blame]
load("@io_bazel_rules_go//go:def.bzl", "go_binary", "go_library")
load("@rules_oci//oci:defs.bzl", "oci_image", "oci_push")
load("//build/binary_tarball:def.bzl", "binary_tarball")
go_library(
name = "mirror_proxy_lib",
srcs = ["main.go"],
importpath = "source.monogon.dev/build/mirror_proxy",
visibility = ["//visibility:private"],
deps = [
"@com_google_cloud_go_storage//:storage",
"@org_golang_google_api//option",
],
)
go_binary(
name = "mirror_proxy",
embed = [":mirror_proxy_lib"],
visibility = ["//visibility:public"],
)
binary_tarball(
name = "mirror_proxy_layer",
executable = ":mirror_proxy",
visibility = ["//visibility:private"],
)
oci_image(
name = "mirror_proxy_image",
base = "@distroless_base",
entrypoint = ["/mirror_proxy"],
tars = [":mirror_proxy_layer"],
visibility = ["//visibility:public"],
workdir = "/app",
)
oci_push(
name = "mirror_proxy_push",
image = ":mirror_proxy_image",
remote_tags = ["latest"],
repository = "gcr.io/monogon-infra/build/mirror_proxy",
)