Refine XCP-ng lifecycle harness boot assumptions

This commit is contained in:
2026-04-14 04:41:20 +02:00
parent 11ae9d73c4
commit d2f5af7b1e
2 changed files with 32 additions and 8 deletions
+10 -2
View File
@@ -198,8 +198,16 @@ Remaining:
- execute the real-node validation harness against a booted self-hosted node
and record the outcome
- resolve the current XCP-ng live-boot blocker if the usual test VM continues to
halt before networking/SSH becomes available
- finish resolving the current XCP-ng live-node validation blocker; current
debugging indicates two concrete harness-level constraints:
- for the current Shepherd PID 1 / XCP-ng path, `ifconfig_xn0=SYNCDHCP`
keeps the guest alive, while the broader `xn0` + `em0` + `vtnet0` set can
cause the guest to halt before validation completes
- a live-booted validation image must not hide its copied store under a
tmpfs-mounted `/tmp`; the harness therefore needs a root/dev-only filesystem
layout when it stages a guest image from a temporary host store path
- there is still a remaining SSH bring-up issue to finish debugging after the
guest reaches the network on the narrowed XCP-ng path
- decide whether generation-local `install.scm` should keep its current
deployment-oriented schema or move closer to the initial install-generation
shape
+22 -6
View File
@@ -211,6 +211,16 @@ cat > "$current_os_file" <<EOF
(user-group #:name "sshd" #:gid 22 #:system? #t)
(user-group #:name "_dhcp" #:gid 65 #:system? #t)
(user-group #:name "operator" #:gid 1000 #:system? #f))
#:file-systems (list (file-system #:device "/dev/ufs/fruix-root"
#:mount-point "/"
#:type "ufs"
#:options "rw"
#:needed-for-boot? #t)
(file-system #:device "devfs"
#:mount-point "/dev"
#:type "devfs"
#:options "rw"
#:needed-for-boot? #t))
#:users (list (user-account #:name "root"
#:uid 0
#:group "wheel"
@@ -243,9 +253,7 @@ cat > "$current_os_file" <<EOF
#:rc-conf-entries '(("clear_tmp_enable" . "YES")
("sendmail_enable" . "NONE")
("sshd_enable" . "YES")
("ifconfig_xn0" . "SYNCDHCP")
("ifconfig_em0" . "SYNCDHCP")
("ifconfig_vtnet0" . "SYNCDHCP"))
("ifconfig_xn0" . "SYNCDHCP"))
#:root-authorized-keys '($root_authorized_key_scm)
#:development-packages %freebsd-development-profile-packages
#:build-packages %freebsd-development-profile-packages))
@@ -262,6 +270,16 @@ cat > "$candidate_os_file" <<EOF
(user-group #:name "sshd" #:gid 22 #:system? #t)
(user-group #:name "_dhcp" #:gid 65 #:system? #t)
(user-group #:name "operator" #:gid 1000 #:system? #f))
#:file-systems (list (file-system #:device "/dev/ufs/fruix-root"
#:mount-point "/"
#:type "ufs"
#:options "rw"
#:needed-for-boot? #t)
(file-system #:device "devfs"
#:mount-point "/dev"
#:type "devfs"
#:options "rw"
#:needed-for-boot? #t))
#:users (list (user-account #:name "root"
#:uid 0
#:group "wheel"
@@ -294,9 +312,7 @@ cat > "$candidate_os_file" <<EOF
#:rc-conf-entries '(("clear_tmp_enable" . "YES")
("sendmail_enable" . "NONE")
("sshd_enable" . "YES")
("ifconfig_xn0" . "SYNCDHCP")
("ifconfig_em0" . "SYNCDHCP")
("ifconfig_vtnet0" . "SYNCDHCP"))
("ifconfig_xn0" . "SYNCDHCP"))
#:root-authorized-keys '($root_authorized_key_scm)
#:development-packages %freebsd-development-profile-packages
#:build-packages %freebsd-development-profile-packages))