.nornir/build-variants.toml
# tunnr-etcd — build variants: the etcd store as PID 1 on a korp appliance.
#
# One payload (`tunnr-etcd-pid1`, static musl, feature `pid1`) and two installer
# media that differ only in the role they boot: `tunnr-etcd-main` replicates
# every write to the twin at 10.77.0.2:2380 and waits for its ack;
# `tunnr-etcd-twin` takes that replication and serves reads and watches.
# The store lives on the data partition korp mounts at /data (XFS).
# Network: eth0 is the uplink (with the default route), eth1 the main↔twin link.
[nornir-build-thing]
schema = 6
[[build.variant]]
name = "tunnr-etcd-pid1"
package = "tunnr-etcd"
bin = "tunnr-etcd"
features = ["pid1"]
profile = "release"
target = "x86_64-unknown-linux-musl"
role = "server"
default = true
[[build.variant]]
name = "tunnr-etcd-main"
role = "server"
kind = "installer"
[[build.variant]]
name = "tunnr-etcd-twin"
role = "server"
kind = "installer"
[[build.installer]]
name = "tunnr-etcd-main"
variant = "tunnr-etcd-pid1"
volume_id = "TUNNR_ETCD_MAIN"
target_disk_gib = 4
gpu = false
boot_params = [
"console=ttyS0,115200",
"panic=10",
"korp.appliance=lean",
"korp.entry=tunnr-etcd",
"korp.env.TUNNR_ETCD_NET=eth0:10.0.2.15/24:10.0.2.2,eth1:10.77.0.1/24",
]
cmd = [
"--data-dir", "/data/tunnr-etcd",
"--listen", "0.0.0.0:2379",
"--twin-addr", "10.77.0.2:2380",
]
[build.installer.payload]
kind = "embedded_iso"
[build.installer.kernel_donor]
repo = "tunnr"
kernel = "tunnr-kernel"
[build.installer.data]
fs = "xfs"
[[build.installer]]
name = "tunnr-etcd-twin"
variant = "tunnr-etcd-pid1"
volume_id = "TUNNR_ETCD_TWIN"
target_disk_gib = 4
gpu = false
boot_params = [
"console=ttyS0,115200",
"panic=10",
"korp.appliance=lean",
"korp.entry=tunnr-etcd",
"korp.env.TUNNR_ETCD_NET=eth0:10.0.2.15/24:10.0.2.2,eth1:10.77.0.2/24",
]
cmd = [
"--role", "twin",
"--data-dir", "/data/tunnr-etcd",
"--listen", "0.0.0.0:2379",
"--twin-listen", "10.77.0.2:2380",
]
[build.installer.payload]
kind = "embedded_iso"
[build.installer.kernel_donor]
repo = "tunnr"
kernel = "tunnr-kernel"
[build.installer.data]
fs = "xfs"