blob: 40f7f01f4b1834204e13a45ebcc33fb36ba5c401 [file] [log] [blame]
load("@io_bazel_rules_go//go:def.bzl", "go_binary", "go_library")
load("//osbase/build/mkcpio:def.bzl", "node_initramfs")
go_library(
name = "nanoswitch_lib",
srcs = [
"nanoswitch.go",
"socks.go",
],
importpath = "source.monogon.dev/metropolis/test/nanoswitch",
visibility = ["//visibility:private"],
deps = [
"//metropolis/node",
"//metropolis/node/core/network/dhcp4c",
"//metropolis/node/core/network/dhcp4c/callback",
"//osbase/logtree",
"//osbase/socksproxy",
"//osbase/supervisor",
"//osbase/test/qemu",
"@com_github_google_nftables//:nftables",
"@com_github_google_nftables//expr",
"@com_github_insomniacslk_dhcp//dhcpv4",
"@com_github_insomniacslk_dhcp//dhcpv4/server4",
"@com_github_vishvananda_netlink//:netlink",
"@org_golang_x_sys//unix",
],
)
go_binary(
name = "nanoswitch",
embed = [":nanoswitch_lib"],
visibility = ["//visibility:private"],
)
node_initramfs(
name = "initramfs",
files = {
"/init": ":nanoswitch",
# CA Certificate bundle
"/etc/ssl/cert.pem": "@cacerts//file",
},
fsspecs = [
"//osbase/build:earlydev.fsspec",
],
visibility = ["//metropolis/test:__subpackages__"],
)