Avoid ifup during Pimox worker static network setup
Homelab Main / validate (push) Waiting to run Details
Homelab Main / deploy (push) Blocked by required conditions Details

This commit is contained in:
juvenal.diaz 2026-09-25 14:11:31 -06:00
parent bcf45c6e8b
commit ca63bcf558
1 changed files with 11 additions and 2 deletions

View File

@ -1277,6 +1277,12 @@ ping -c 2 -W 2 '${lan_probe_host}'"
script="$(cat <<EOF script="$(cat <<EOF
set -eu set -eu
echo 'guest-check: initial links'
ip -br link
echo 'guest-check: initial addresses'
ip -br addr || true
echo 'guest-check: initial routes'
ip route || true
cat >/tmp/homelab-interfaces <<'INTERFACES' cat >/tmp/homelab-interfaces <<'INTERFACES'
auto lo auto lo
iface lo inet loopback iface lo inet loopback
@ -1297,14 +1303,17 @@ done
sudo pkill -x dhclient >/dev/null 2>&1 || true sudo pkill -x dhclient >/dev/null 2>&1 || true
sudo pkill -x dhcpcd >/dev/null 2>&1 || true sudo pkill -x dhcpcd >/dev/null 2>&1 || true
sudo systemctl enable networking >/dev/null 2>&1 || true sudo systemctl enable networking >/dev/null 2>&1 || true
if command -v timeout >/dev/null 2>&1; then
sudo timeout 20 ifdown --force ${interface_name} 2>/dev/null || true
else
sudo ifdown --force ${interface_name} 2>/dev/null || true sudo ifdown --force ${interface_name} 2>/dev/null || true
fi
sudo ip addr flush dev ${interface_name} scope global || true sudo ip addr flush dev ${interface_name} scope global || true
sudo ip route flush dev ${interface_name} || true sudo ip route flush dev ${interface_name} || true
sudo ip link set ${interface_name} up sudo ip link set ${interface_name} up
sudo ip addr add ${worker_ip} dev ${interface_name} sudo ip addr add ${worker_ip} dev ${interface_name}
sudo ip route replace default via ${gateway} dev ${interface_name} src ${worker_address} sudo ip route replace default via ${gateway} dev ${interface_name} src ${worker_address}
printf '%s\n' ${dns_servers} | awk '{ for (i = 1; i <= NF; i++) print "nameserver " \$i }' | sudo tee /etc/resolv.conf >/dev/null printf '%s\n' ${dns_servers} | awk '{ for (i = 1; i <= NF; i++) print "nameserver " \$i }' | sudo tee /etc/resolv.conf >/dev/null
sudo ifup --force ${interface_name} 2>/dev/null || true
sudo ssh-keygen -A sudo ssh-keygen -A
sudo install -d -m 0755 /run/sshd sudo install -d -m 0755 /run/sshd
sudo mkdir -p /etc/ssh/sshd_config.d sudo mkdir -p /etc/ssh/sshd_config.d