blob: 34f346b13d5a016fb0f9fd2bed6888ca9899c460 [file] [log] [blame]
Lorenz Brunad5b47d2021-11-09 13:52:56 +01001load("@io_bazel_rules_go//go:def.bzl", "go_binary", "go_library")
Tim Windelschmidtbed76d92025-02-18 03:04:14 +01002load("//osbase/build/mkerofs:def.bzl", "erofs_image")
Jan Schär5fdca562025-04-14 11:33:29 +00003load("//osbase/build/mkoci:def.bzl", "oci_os_image")
Tim Windelschmidtbed76d92025-02-18 03:04:14 +01004load("//osbase/build/mkpayload:def.bzl", "efi_unified_kernel_image")
5load("//osbase/build/mkverity:def.bzl", "verity_image")
Lorenz Brunad5b47d2021-11-09 13:52:56 +01006
7erofs_image(
8 name = "rootfs",
9 files = {
Tim Windelschmidt24bf6fd2025-02-12 04:48:24 +010010 "/init": ":testos",
Lorenz Brunad5b47d2021-11-09 13:52:56 +010011 },
12)
13
Mateusz Zalega8c2c7712022-01-25 19:42:21 +010014verity_image(
15 name = "verity_rootfs",
16 source = ":rootfs",
17)
18
Lorenz Brunad5b47d2021-11-09 13:52:56 +010019efi_unified_kernel_image(
20 name = "kernel_efi",
Lorenz Brunad131882023-06-28 16:42:20 +020021 cmdline = "quiet console=ttyS0 init=/init",
Lorenz Brunad5b47d2021-11-09 13:52:56 +010022 kernel = "//third_party/linux",
Mateusz Zalega8c2c7712022-01-25 19:42:21 +010023 verity = ":verity_rootfs",
Lorenz Brunad5b47d2021-11-09 13:52:56 +010024)
25
Jan Schär5fdca562025-04-14 11:33:29 +000026oci_os_image(
27 name = "testos_image",
28 srcs = {
29 "system": ":verity_rootfs",
30 "kernel.efi": ":kernel_efi",
31 },
32 visibility = ["//visibility:public"],
33)
34
Lorenz Brunad5b47d2021-11-09 13:52:56 +010035go_library(
Lorenz Brund13c1c62022-03-30 19:58:58 +020036 name = "testos_lib",
Lorenz Brunad5b47d2021-11-09 13:52:56 +010037 srcs = ["main.go"],
Mateusz Zalegaedffbb52022-01-11 15:27:22 +010038 importpath = "source.monogon.dev/metropolis/installer/test/testos",
Lorenz Brunad5b47d2021-11-09 13:52:56 +010039 visibility = ["//visibility:private"],
Lorenz Brund13c1c62022-03-30 19:58:58 +020040 deps = ["@org_golang_x_sys//unix"],
Lorenz Brunad5b47d2021-11-09 13:52:56 +010041)
42
43go_binary(
44 name = "testos",
Lorenz Brund13c1c62022-03-30 19:58:58 +020045 embed = [":testos_lib"],
Lorenz Brunad5b47d2021-11-09 13:52:56 +010046 visibility = ["//visibility:public"],
47)