blob: 160ebf875d6147d672644b83ba5d25d603ea0fbd [file] [log] [blame]
load("@io_bazel_rules_go//go:def.bzl", "go_binary", "go_library")
load("@aspect_bazel_lib//lib:transitions.bzl", "platform_transition_binary")
go_library(
name = "httpserver_lib",
srcs = ["main.go"],
importpath = "source.monogon.dev/metropolis/test/e2e/httpserver",
visibility = ["//visibility:private"],
)
go_binary(
name = "httpserver",
embed = [":httpserver_lib"],
pure = "on",
visibility = ["//visibility:private"],
)
platform_transition_binary(
name = "httpserver_transitioned",
binary = ":httpserver",
target_platform = "//build/platforms:linux_amd64_static",
visibility = ["//visibility:private"],
)
load("@rules_pkg//pkg:tar.bzl", "pkg_tar")
pkg_tar(
name = "httpserver_layer",
srcs = [":httpserver_transitioned"],
visibility = ["//visibility:private"],
)
load("@rules_oci//oci:defs.bzl", "oci_image", "oci_tarball")
oci_image(
name = "httpserver_image",
base = "@distroless_base",
entrypoint = ["/httpserver"],
tars = [":httpserver_layer"],
visibility = ["//metropolis/test/e2e:__pkg__"],
workdir = "/app",
)
oci_tarball(
name = "httpserver_tarball",
image = ":httpserver_image",
repo_tags = ["bazel/metropolis/test/e2e/httpserver:httpserver_image"],
visibility = ["//metropolis/test/e2e:__pkg__"],
)