blob: 0e571087dbaaf83d1dbbf8a27bf605bc1ab6b603 [file] [log] [blame]
Mateusz Zalega43e21072021-10-08 18:05:29 +02001load("@io_bazel_rules_go//go:def.bzl", "go_binary", "go_library")
2load("//metropolis/node/build:def.bzl", "node_initramfs")
3load("//metropolis/node/build/genosrelease:defs.bzl", "os_release")
4load("//metropolis/node/build:efi.bzl", "efi_unified_kernel_image")
5
6go_library(
7 name = "go_default_library",
8 srcs = ["main.go"],
Mateusz Zalegaedffbb52022-01-11 15:27:22 +01009 importpath = "source.monogon.dev/metropolis/installer",
Mateusz Zalega43e21072021-10-08 18:05:29 +020010 visibility = ["//visibility:private"],
11 deps = [
12 "//metropolis/node/build/mkimage/osimage:go_default_library",
13 "//metropolis/pkg/efivarfs:go_default_library",
14 "//metropolis/pkg/sysfs:go_default_library",
15 "@org_golang_x_sys//unix:go_default_library",
16 ],
17)
18
19go_binary(
20 name = "installer",
21 embed = [":go_default_library"],
22 visibility = ["//visibility:private"],
23)
24
25node_initramfs(
26 name = "initramfs",
27 files = {
Mateusz Zalegaedffbb52022-01-11 15:27:22 +010028 "//metropolis/installer": "/init",
Mateusz Zalega43e21072021-10-08 18:05:29 +020029 },
Mateusz Zalegaedffbb52022-01-11 15:27:22 +010030 visibility = ["//metropolis/installer/test:__pkg__"],
Mateusz Zalega43e21072021-10-08 18:05:29 +020031)
32
33os_release(
34 name = "installer-release-info",
35 os_id = "metropolis-installer",
36 os_name = "Metropolis Installer",
37 stamp_var = "STABLE_METROPOLIS_version",
38)
39
40efi_unified_kernel_image(
41 name = "kernel",
Lorenz Brun57d06a72022-01-13 14:12:27 +010042 cmdline = "console=ttyS0",
Mateusz Zalega43e21072021-10-08 18:05:29 +020043 initramfs = ":initramfs",
44 kernel = "//third_party/linux",
45 os_release = ":installer-release-info",
46 visibility = ["//visibility:public"],
47)