blob: 1eb34e26fe277cefd92a506384b027ab241a88b3 [file] [log] [blame]
Lorenz Brun7922d412023-02-21 20:47:39 +01001load("@io_bazel_rules_go//go:def.bzl", "go_binary", "go_library")
2load("//metropolis/node/build/mkucode:def.bzl", "cpio_ucode")
3
4go_library(
5 name = "takeover_lib",
6 srcs = ["takeover.go"],
7 embedsrcs = [
8 "//third_party/linux", #keep
9 ":ucode", #keep
10 "//cloud/agent:initramfs", #keep
11 ],
12 importpath = "source.monogon.dev/cloud/takeover",
13 visibility = ["//visibility:private"],
14 deps = [
15 "//cloud/agent/api",
16 "//metropolis/pkg/bootparam",
17 "//metropolis/pkg/kexec",
18 "//net/dump",
19 "@com_github_cavaliergopher_cpio//:cpio",
20 "@com_github_pierrec_lz4_v4//:lz4",
21 "@org_golang_google_protobuf//proto",
22 "@org_golang_x_sys//unix",
23 ],
24)
25
26go_binary(
27 name = "takeover",
28 embed = [":takeover_lib"],
29 visibility = ["//visibility:public"],
30)
31
32cpio_ucode(
33 name = "ucode",
34 ucode = {
35 "@linux-firmware//:amd_ucode": "AuthenticAMD",
36 "@intel_ucode//:fam6h": "GenuineIntel",
37 },
38)