metis: source peer access keys from env-backed secrets
This commit is contained in:
parent
edb718a5f6
commit
da6bb1aaab
@ -283,7 +283,7 @@ nodes:
|
|||||||
ssh_user: atlas
|
ssh_user: atlas
|
||||||
ssh_authorized_keys:
|
ssh_authorized_keys:
|
||||||
- ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOb8oMX6u0z3sH/p/WBGlvPXXdbGETCKzWYwR/dd6fZb titan-bastion
|
- ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOb8oMX6u0z3sH/p/WBGlvPXXdbGETCKzWYwR/dd6fZb titan-bastion
|
||||||
- ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIBlmAXoeYVcX3zE+MSsvjB7gpAHRX0djiWYxoAuAFEQx brad.stein@bstein.dev
|
- ${METIS_SSH_KEY_BRAD}
|
||||||
- name: titan-db
|
- name: titan-db
|
||||||
class: rpi5-ubuntu-host
|
class: rpi5-ubuntu-host
|
||||||
hostname: titan-db
|
hostname: titan-db
|
||||||
@ -294,8 +294,8 @@ nodes:
|
|||||||
ssh_user: atlas
|
ssh_user: atlas
|
||||||
ssh_authorized_keys:
|
ssh_authorized_keys:
|
||||||
- ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOb8oMX6u0z3sH/p/WBGlvPXXdbGETCKzWYwR/dd6fZb titan-bastion
|
- ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOb8oMX6u0z3sH/p/WBGlvPXXdbGETCKzWYwR/dd6fZb titan-bastion
|
||||||
- ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIBlmAXoeYVcX3zE+MSsvjB7gpAHRX0djiWYxoAuAFEQx brad.stein@bstein.dev
|
- ${METIS_SSH_KEY_BRAD}
|
||||||
- ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIA48uzhL71cXeFDb+LGla1z0kFUYfWPWIgby7uaaGAaY hecate-tethys-forward
|
- ${METIS_SSH_KEY_HECATE_TETHYS}
|
||||||
- name: titan-24
|
- name: titan-24
|
||||||
class: amd64-debian-worker
|
class: amd64-debian-worker
|
||||||
hostname: titan-24
|
hostname: titan-24
|
||||||
@ -306,7 +306,7 @@ nodes:
|
|||||||
ssh_user: atlas
|
ssh_user: atlas
|
||||||
ssh_authorized_keys:
|
ssh_authorized_keys:
|
||||||
- ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOb8oMX6u0z3sH/p/WBGlvPXXdbGETCKzWYwR/dd6fZb titan-bastion
|
- ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOb8oMX6u0z3sH/p/WBGlvPXXdbGETCKzWYwR/dd6fZb titan-bastion
|
||||||
- ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIBlmAXoeYVcX3zE+MSsvjB7gpAHRX0djiWYxoAuAFEQx brad.stein@bstein.dev
|
- ${METIS_SSH_KEY_BRAD}
|
||||||
- name: titan-0a
|
- name: titan-0a
|
||||||
class: rpi5-ubuntu-control-plane
|
class: rpi5-ubuntu-control-plane
|
||||||
hostname: titan-0a
|
hostname: titan-0a
|
||||||
|
|||||||
@ -3,6 +3,7 @@ package inventory
|
|||||||
import (
|
import (
|
||||||
"fmt"
|
"fmt"
|
||||||
"os"
|
"os"
|
||||||
|
"strings"
|
||||||
|
|
||||||
"gopkg.in/yaml.v3"
|
"gopkg.in/yaml.v3"
|
||||||
)
|
)
|
||||||
@ -106,9 +107,15 @@ func expandInventory(inv *Inventory) {
|
|||||||
for taintIdx, value := range inv.Nodes[idx].Taints {
|
for taintIdx, value := range inv.Nodes[idx].Taints {
|
||||||
inv.Nodes[idx].Taints[taintIdx] = os.ExpandEnv(value)
|
inv.Nodes[idx].Taints[taintIdx] = os.ExpandEnv(value)
|
||||||
}
|
}
|
||||||
for keyIdx, value := range inv.Nodes[idx].SSHAuthorized {
|
expandedKeys := make([]string, 0, len(inv.Nodes[idx].SSHAuthorized))
|
||||||
inv.Nodes[idx].SSHAuthorized[keyIdx] = os.ExpandEnv(value)
|
for _, value := range inv.Nodes[idx].SSHAuthorized {
|
||||||
|
expanded := strings.TrimSpace(os.ExpandEnv(value))
|
||||||
|
if expanded == "" {
|
||||||
|
continue
|
||||||
|
}
|
||||||
|
expandedKeys = append(expandedKeys, expanded)
|
||||||
}
|
}
|
||||||
|
inv.Nodes[idx].SSHAuthorized = expandedKeys
|
||||||
for diskIdx := range inv.Nodes[idx].LonghornDisks {
|
for diskIdx := range inv.Nodes[idx].LonghornDisks {
|
||||||
inv.Nodes[idx].LonghornDisks[diskIdx].Mountpoint = os.ExpandEnv(inv.Nodes[idx].LonghornDisks[diskIdx].Mountpoint)
|
inv.Nodes[idx].LonghornDisks[diskIdx].Mountpoint = os.ExpandEnv(inv.Nodes[idx].LonghornDisks[diskIdx].Mountpoint)
|
||||||
inv.Nodes[idx].LonghornDisks[diskIdx].UUID = os.ExpandEnv(inv.Nodes[idx].LonghornDisks[diskIdx].UUID)
|
inv.Nodes[idx].LonghornDisks[diskIdx].UUID = os.ExpandEnv(inv.Nodes[idx].LonghornDisks[diskIdx].UUID)
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user