blob: e994c483cf8bc56b752a988256f57f94c9ea9f07 [file] [log] [blame]
load("@io_bazel_rules_go//go:def.bzl", "go_binary", "go_library")
load("//metropolis/node/build/kconfig-patcher:kconfig-patcher.bzl", "kconfig_patch")
load("//third_party/linux:def.bzl", "linux_image")
go_library(
name = "go_default_library",
srcs = ["main.go"],
importpath = "source.monogon.dev/metropolis/test/ktest",
visibility = ["//visibility:private"],
deps = ["//metropolis/test/launch:go_default_library"],
)
go_binary(
name = "ktest",
embed = [":go_default_library"],
pure = "on",
visibility = ["//metropolis:__subpackages__"],
)
kconfig_patch(
name = "testing-config",
src = "//third_party/linux:linux-metropolis.config",
out = "testing.config",
override_configs = {
# Unlock command line
"CONFIG_CMDLINE_OVERRIDE": "n",
"CONFIG_CMDLINE_BOOL": "n",
# Shave off 1 second from boot time
"CONFIG_SERIO_I8042": "",
"CONFIG_KEYBOARD_ATKBD": "",
"CONFIG_RTC_DRV_CMOS": "",
# Shave off an additional 18ms (half of the boot time)
"CONFIG_DEBUG_WX": "",
},
)
linux_image(
name = "linux-testing",
image_format = "vmlinux",
kernel_config = ":testing-config",
# This image is directly used by the ktest macro, thus it needs a pretty
# wide visibility.
visibility = [
"//metropolis:__subpackages__",
],
)
filegroup(
name = "test-script",
srcs = ["run_ktest.sh"],
visibility = ["//metropolis:__subpackages__"],
)