| Lorenz Brun | ad5b47d | 2021-11-09 13:52:56 +0100 | [diff] [blame] | 1 | load("@io_bazel_rules_go//go:def.bzl", "go_binary", "go_library") |
| Jan Schär | 07e6905 | 2025-05-12 16:34:15 +0000 | [diff] [blame^] | 2 | load("//osbase/build/genproductinfo:test.bzl", "test_product_info") |
| Tim Windelschmidt | bed76d9 | 2025-02-18 03:04:14 +0100 | [diff] [blame] | 3 | load("//osbase/build/mkerofs:def.bzl", "erofs_image") |
| Jan Schär | 5fdca56 | 2025-04-14 11:33:29 +0000 | [diff] [blame] | 4 | load("//osbase/build/mkoci:def.bzl", "oci_os_image") |
| Tim Windelschmidt | bed76d9 | 2025-02-18 03:04:14 +0100 | [diff] [blame] | 5 | load("//osbase/build/mkpayload:def.bzl", "efi_unified_kernel_image") |
| 6 | load("//osbase/build/mkverity:def.bzl", "verity_image") |
| Lorenz Brun | ad5b47d | 2021-11-09 13:52:56 +0100 | [diff] [blame] | 7 | |
| 8 | erofs_image( |
| 9 | name = "rootfs", |
| 10 | files = { |
| Tim Windelschmidt | 24bf6fd | 2025-02-12 04:48:24 +0100 | [diff] [blame] | 11 | "/init": ":testos", |
| Lorenz Brun | ad5b47d | 2021-11-09 13:52:56 +0100 | [diff] [blame] | 12 | }, |
| 13 | ) |
| 14 | |
| Mateusz Zalega | 8c2c771 | 2022-01-25 19:42:21 +0100 | [diff] [blame] | 15 | verity_image( |
| 16 | name = "verity_rootfs", |
| 17 | source = ":rootfs", |
| 18 | ) |
| 19 | |
| Lorenz Brun | ad5b47d | 2021-11-09 13:52:56 +0100 | [diff] [blame] | 20 | efi_unified_kernel_image( |
| 21 | name = "kernel_efi", |
| Lorenz Brun | ad13188 | 2023-06-28 16:42:20 +0200 | [diff] [blame] | 22 | cmdline = "quiet console=ttyS0 init=/init", |
| Lorenz Brun | ad5b47d | 2021-11-09 13:52:56 +0100 | [diff] [blame] | 23 | kernel = "//third_party/linux", |
| Mateusz Zalega | 8c2c771 | 2022-01-25 19:42:21 +0100 | [diff] [blame] | 24 | verity = ":verity_rootfs", |
| Lorenz Brun | ad5b47d | 2021-11-09 13:52:56 +0100 | [diff] [blame] | 25 | ) |
| 26 | |
| Jan Schär | 07e6905 | 2025-05-12 16:34:15 +0000 | [diff] [blame^] | 27 | test_product_info( |
| 28 | name = "product_info", |
| 29 | os_id = "testos", |
| 30 | os_name = "Test OS", |
| 31 | ) |
| 32 | |
| Jan Schär | 5fdca56 | 2025-04-14 11:33:29 +0000 | [diff] [blame] | 33 | oci_os_image( |
| 34 | name = "testos_image", |
| 35 | srcs = { |
| 36 | "system": ":verity_rootfs", |
| 37 | "kernel.efi": ":kernel_efi", |
| 38 | }, |
| Jan Schär | 07e6905 | 2025-05-12 16:34:15 +0000 | [diff] [blame^] | 39 | product_info = ":product_info", |
| Jan Schär | 5fdca56 | 2025-04-14 11:33:29 +0000 | [diff] [blame] | 40 | visibility = ["//visibility:public"], |
| 41 | ) |
| 42 | |
| Lorenz Brun | ad5b47d | 2021-11-09 13:52:56 +0100 | [diff] [blame] | 43 | go_library( |
| Lorenz Brun | d13c1c6 | 2022-03-30 19:58:58 +0200 | [diff] [blame] | 44 | name = "testos_lib", |
| Lorenz Brun | ad5b47d | 2021-11-09 13:52:56 +0100 | [diff] [blame] | 45 | srcs = ["main.go"], |
| Mateusz Zalega | edffbb5 | 2022-01-11 15:27:22 +0100 | [diff] [blame] | 46 | importpath = "source.monogon.dev/metropolis/installer/test/testos", |
| Lorenz Brun | ad5b47d | 2021-11-09 13:52:56 +0100 | [diff] [blame] | 47 | visibility = ["//visibility:private"], |
| Lorenz Brun | d13c1c6 | 2022-03-30 19:58:58 +0200 | [diff] [blame] | 48 | deps = ["@org_golang_x_sys//unix"], |
| Lorenz Brun | ad5b47d | 2021-11-09 13:52:56 +0100 | [diff] [blame] | 49 | ) |
| 50 | |
| 51 | go_binary( |
| 52 | name = "testos", |
| Lorenz Brun | d13c1c6 | 2022-03-30 19:58:58 +0200 | [diff] [blame] | 53 | embed = [":testos_lib"], |
| Lorenz Brun | ad5b47d | 2021-11-09 13:52:56 +0100 | [diff] [blame] | 54 | visibility = ["//visibility:public"], |
| 55 | ) |