blob: 5fad3c2867c2e16a5606c7b189ec7ce978ffe206 [file] [log] [blame]
Tim Windelschmidtb6308cd2023-10-10 21:19:03 +02001load("@io_bazel_rules_go//go:def.bzl", "go_binary", "go_library")
Tim Windelschmidtb6308cd2023-10-10 21:19:03 +02002
3go_library(
4 name = "mini_lib",
5 srcs = [
6 "main.go",
7 "provider.go",
8 "ssh.go",
9 ],
10 importpath = "source.monogon.dev/cloud/shepherd/mini",
11 visibility = ["//visibility:public"],
12 deps = [
13 "//cloud/bmaas/bmdb",
14 "//cloud/bmaas/bmdb/model",
15 "//cloud/bmaas/bmdb/webug",
16 "//cloud/lib/component",
17 "//cloud/shepherd",
18 "//cloud/shepherd/manager",
Tim Windelschmidt5f5f3302024-02-22 23:50:24 +010019 "//go/net/ssh",
Tim Windelschmidtb6308cd2023-10-10 21:19:03 +020020 "//metropolis/cli/pkg/context",
21 "@io_k8s_klog_v2//:klog",
22 "@org_golang_x_crypto//ssh",
23 ],
24)
25
26go_binary(
27 name = "mini",
28 embed = [":mini_lib"],
29 visibility = ["//visibility:public"],
30)
31
Tim Windelschmidt0974b222024-01-16 14:04:15 +010032load("@rules_pkg//pkg:tar.bzl", "pkg_tar")
33
34pkg_tar(
Tim Windelschmidtb6308cd2023-10-10 21:19:03 +020035 name = "mini_layer",
Tim Windelschmidt0974b222024-01-16 14:04:15 +010036 srcs = [":mini"],
Tim Windelschmidtb6308cd2023-10-10 21:19:03 +020037)
38
Tim Windelschmidt0974b222024-01-16 14:04:15 +010039load("@rules_oci//oci:defs.bzl", "oci_image")
40
41oci_image(
42 name = "mini_image",
43 base = "@distroless_base",
44 entrypoint = ["/mini"],
Tim Windelschmidtb6308cd2023-10-10 21:19:03 +020045 tars = [
46 ":mini_layer",
Tim Windelschmidt79ffbbe2024-02-22 19:15:51 +010047 "//cloud/agent/takeover:takeover_layer",
Tim Windelschmidtb6308cd2023-10-10 21:19:03 +020048 ],
49 visibility = ["//visibility:public"],
50 workdir = "/app",
51)