blob: 23445a0ff29f62a341ec1f9af2bb6b0c4b3dfa4f [file] [log] [blame]
Tim Windelschmidt0974b222024-01-16 14:04:15 +01001load("@io_bazel_rules_go//go:def.bzl", "go_binary", "go_library")
Tim Windelschmidt681d5152025-01-08 00:19:33 +01002load("@rules_oci//oci:defs.bzl", "oci_image")
3load("//build/static_binary_tarball:def.bzl", "static_binary_tarball")
Serge Bazanski9104e382023-04-04 20:08:21 +02004
5go_library(
Tim Windelschmidt0974b222024-01-16 14:04:15 +01006 name = "selftest_lib",
Serge Bazanski9104e382023-04-04 20:08:21 +02007 srcs = ["main.go"],
8 importpath = "source.monogon.dev/metropolis/test/e2e/selftest",
9 visibility = ["//visibility:private"],
10)
11
Tim Windelschmidt0974b222024-01-16 14:04:15 +010012go_binary(
13 name = "selftest",
14 embed = [":selftest_lib"],
Serge Bazanski9104e382023-04-04 20:08:21 +020015 pure = "on",
Tim Windelschmidt0974b222024-01-16 14:04:15 +010016 visibility = ["//visibility:private"],
17)
18
Tim Windelschmidt681d5152025-01-08 00:19:33 +010019static_binary_tarball(
Tim Windelschmidt0974b222024-01-16 14:04:15 +010020 name = "selftest_layer",
Tim Windelschmidt681d5152025-01-08 00:19:33 +010021 executable = ":selftest",
Tim Windelschmidt0974b222024-01-16 14:04:15 +010022 visibility = ["//visibility:private"],
23)
24
Tim Windelschmidt0974b222024-01-16 14:04:15 +010025oci_image(
26 name = "selftest_image",
27 base = "@distroless_base",
Tim Windelschmidt681d5152025-01-08 00:19:33 +010028 entrypoint = ["/app/metropolis/test/e2e/selftest/selftest_/selftest"],
Tim Windelschmidt0974b222024-01-16 14:04:15 +010029 tars = [":selftest_layer"],
Lorenz Brun150f24a2023-07-13 20:11:06 +020030 visibility = ["//metropolis/test/e2e:__pkg__"],
Tim Windelschmidt0974b222024-01-16 14:04:15 +010031 workdir = "/app",
Serge Bazanski9104e382023-04-04 20:08:21 +020032)