D47 follow-up: a set-aside tells the operator once (backup_run_failures, leg unit-set-aside, both identities, own run id). Red-proved. Commit only.
gates / gates (push) Successful in 1m33s

This commit is contained in:
2026-10-25 17:17:00 +01:00
parent 3a1f09d29f
commit 935e624f10
6 changed files with 43 additions and 0 deletions
+8
View File
@@ -181,9 +181,17 @@ func (m *Manager) guardUnitDir(stack, unitDir, setAsideNs, what string) error {
}
m.logger.Printf("[INFO] [backup] %s: the recovery unit of an earlier install (%s; %s) is SET ASIDE whole → %s; this install (%s) gets its own unit from its first backup (D47)",
stack, orUnknown(unitID), why, dest, orUnknown(liveID))
if m.unitSetAsideNotify != nil {
m.unitSetAsideNotify(stack, orUnknown(unitID), orUnknown(liveID), dest)
}
return nil
}
// SetUnitSetAsideNotify wires the operator line for a set-aside unit (main.go).
func (m *Manager) SetUnitSetAsideNotify(fn func(stack, unitID, liveID, dest string)) {
m.unitSetAsideNotify = fn
}
func orUnknown(id string) string {
if id == "" {
return "unrecorded"