CMM: add backup staging (sync-cmm-backups.sh) + write cmmid.txt at resolve

sync-cmm-backups.sh pushes per-CMM backup sets (goCMM + PC-DMIS zips produced
by Backup-CMM) from pxe-images/cmm-bk/<cmm_id>/ to the PXE share at
installers-post/cmm/backups/<cmm_id>/, atomic-swap with a timestamped prior
copy. Distinct from sync-cmm.sh (which stages the CMM installer bundle).

resolve-cmm-bay-config.ps1 now also writes cmmid.txt alongside version/doda/
partgroup, so 09-Setup-CMM can locate this bay's staged backup for
restore-by-machine-number.

The 09-Setup-CMM restore block + startnet staging line are intentionally NOT
added yet - the restore needs manual end-to-end validation on a real CMM
before auto-running at imaging (per the live-bay restore issues we hit).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
cproudlock
2026-06-12 08:47:21 -04:00
parent 1d65103cc0
commit c8e704b595
2 changed files with 70 additions and 0 deletions

View File

@@ -51,6 +51,9 @@ if ($match.PSObject.Properties['part_group'] -and $match.part_group) {
[System.IO.File]::WriteAllText((Join-Path $OutDir 'version.txt'), $version)
[System.IO.File]::WriteAllText((Join-Path $OutDir 'doda.txt'), $doda)
# cmmid.txt: the resolved CMM id, so 09-Setup-CMM can locate this bay's staged
# backup set (installers-post\cmm\backups\<cmm_id>\) for restore-by-machine-#.
[System.IO.File]::WriteAllText((Join-Path $OutDir 'cmmid.txt'), $CmmId)
if ($partGroup) {
[System.IO.File]::WriteAllText((Join-Path $OutDir 'partgroup.txt'), $partGroup)
}