From 29a546179c2841051e2c3048f1b631b53df16065 Mon Sep 17 00:00:00 2001 From: Brad Stein Date: Wed, 1 Apr 2026 10:31:06 -0300 Subject: [PATCH] service: expand metis rpi4 target coverage --- README.md | 2 +- inventory.titan-rpi4.yaml | 40 +++++++++++++++++++++++++++++++++++++++ pkg/service/settings.go | 2 +- 3 files changed, 42 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index d5820d9..c986eff 100644 --- a/README.md +++ b/README.md @@ -48,7 +48,7 @@ Metis produces fully configured recovery SD cards for any node in the lab (RPi 4 - `metis config --inventory inv.yaml --node titan-13` prints the merged node config (hostname/IP/k3s labels/taints/Longhorn UUIDs). ## Service direction -- Deployed UI protected by Atlas SSO headers (`admin` / `maintainer`) +- Deployed UI protected by Atlas SSO headers (`admin` / `maintenance`) - Default flash host support for `titan-22` - Recent build / flash / sentinel change history - Ariadne-driven sentinel watch cadence diff --git a/inventory.titan-rpi4.yaml b/inventory.titan-rpi4.yaml index 1bae27b..d52ff10 100644 --- a/inventory.titan-rpi4.yaml +++ b/inventory.titan-rpi4.yaml @@ -9,8 +9,28 @@ classes: hardware: rpi4 node-role.kubernetes.io/worker: "true" root_overlay: overlays/rpi4-armbian-longhorn-root + - name: rpi4-armbian-worker + arch: arm64 + os: armbian-noble + image: ${METIS_IMAGE_RPI4_ARMBIAN_LONGHORN} + checksum: ${METIS_IMAGE_RPI4_ARMBIAN_LONGHORN_SHA256} + k3s_version: v1.31.5+k3s1 + default_labels: + hardware: rpi4 + node-role.kubernetes.io/worker: "true" + root_overlay: overlays/rpi4-armbian-longhorn-root nodes: + - name: titan-12 + class: rpi4-armbian-worker + hostname: titan-12 + ip: 192.168.22.40 + k3s_role: agent + k3s_url: https://192.168.22.7:6443 + k3s_token: ${METIS_K3S_TOKEN} + ssh_user: atlas + ssh_authorized_keys: + - ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOb8oMX6u0z3sH/p/WBGlvPXXdbGETCKzWYwR/dd6fZb titan-bastion - name: titan-13 class: rpi4-armbian-longhorn hostname: titan-13 @@ -45,6 +65,16 @@ nodes: - mountpoint: /mnt/asteria uuid: 9c5316e6-f847-4884-b502-11f2d0d15d6f fs: ext4 + - name: titan-14 + class: rpi4-armbian-worker + hostname: titan-14 + ip: 192.168.22.42 + k3s_role: agent + k3s_url: https://192.168.22.7:6443 + k3s_token: ${METIS_K3S_TOKEN} + ssh_user: atlas + ssh_authorized_keys: + - ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOb8oMX6u0z3sH/p/WBGlvPXXdbGETCKzWYwR/dd6fZb titan-bastion - name: titan-17 class: rpi4-armbian-longhorn hostname: titan-17 @@ -79,3 +109,13 @@ nodes: - mountpoint: /mnt/asteria uuid: 2b4ea28d-b0e6-4fa3-841b-cd7067ae9153 fs: ext4 + - name: titan-18 + class: rpi4-armbian-worker + hostname: titan-18 + ip: 192.168.22.46 + k3s_role: agent + k3s_url: https://192.168.22.7:6443 + k3s_token: ${METIS_K3S_TOKEN} + ssh_user: atlas + ssh_authorized_keys: + - ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOb8oMX6u0z3sH/p/WBGlvPXXdbGETCKzWYwR/dd6fZb titan-bastion diff --git a/pkg/service/settings.go b/pkg/service/settings.go index 828440e..a6ebced 100644 --- a/pkg/service/settings.go +++ b/pkg/service/settings.go @@ -51,7 +51,7 @@ func FromEnv() Settings { DefaultFlashHost: defaultFlashHost, FlashHosts: flashHosts, LocalHost: localHost, - AllowedGroups: splitList(getenvDefault("METIS_ALLOWED_GROUPS", "admin,maintainer")), + AllowedGroups: splitList(getenvDefault("METIS_ALLOWED_GROUPS", "admin,maintenance")), MaxDeviceBytes: getenvInt64("METIS_MAX_DEVICE_BYTES", 300000000000), Namespace: getenvDefault("METIS_NAMESPACE", "maintenance"), RunnerImageAMD64: getenvDefault("METIS_RUNNER_IMAGE_AMD64", ""),