feat: derive PBS backup jobs and audit VMIDs from the service registry
- pve-backup-jobs.yml: each job's vmid list is now computed from homelab_services by backup.job instead of a hand-maintained CSV. Adding a service no longer needs a separate edit here (the forgotten-edit failure mode that left CT 148 emergency-bot without a backup). - roles/backup_audit/defaults: backup_audit_pbs_vmids derived from homelab_services by the monitoring.backup_audit_vmid flag; single shared freshness threshold backup_audit_pbs_max_age_hours (48). Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_012uoq5AVK8mkBgg83Mq6o5V
This commit is contained in:
co-authored by
Claude Sonnet 5
parent
7031d7dbb3
commit
baef2c49b3
@@ -3,29 +3,22 @@ backup_audit_log_file: /var/log/homelab-backup-audit.log
|
||||
backup_audit_timer_oncalendar: "*-*-* 06:00:00"
|
||||
backup_audit_timer_randomized_delay: 10m
|
||||
|
||||
backup_audit_pbs_vmids:
|
||||
- vmid: 132
|
||||
max_age_hours: 48
|
||||
- vmid: 140
|
||||
max_age_hours: 48
|
||||
- vmid: 141
|
||||
max_age_hours: 48
|
||||
- vmid: 142
|
||||
max_age_hours: 48
|
||||
- vmid: 143
|
||||
max_age_hours: 48
|
||||
- vmid: 144
|
||||
max_age_hours: 48
|
||||
- vmid: 145
|
||||
max_age_hours: 48
|
||||
- vmid: 146
|
||||
max_age_hours: 48
|
||||
- vmid: 147
|
||||
max_age_hours: 48
|
||||
- vmid: 149
|
||||
max_age_hours: 48
|
||||
- vmid: 150
|
||||
max_age_hours: 48
|
||||
# Единый порог свежести для всех PBS-снапшотов. Вынесен отдельно, потому что
|
||||
# сам список VMID теперь выводится из реестра и per-vmid значения в нём нет.
|
||||
backup_audit_pbs_max_age_hours: 48
|
||||
|
||||
# VMID берутся из homelab_services по флагу monitoring.backup_audit_vmid, а не
|
||||
# перечисляются вручную. Форма записи ({vmid, max_age_hours}) сохранена, чтобы
|
||||
# вызывающий playbook при необходимости мог передать свой список с иными
|
||||
# порогами — шаблон audit-pbs.sh.j2 читает именно эти два поля.
|
||||
backup_audit_pbs_vmids: >-
|
||||
{{ homelab_services.values()
|
||||
| selectattr('monitoring.backup_audit_vmid', 'defined')
|
||||
| selectattr('monitoring.backup_audit_vmid')
|
||||
| map(attribute='vmid') | sort
|
||||
| map('community.general.dict_kv', 'vmid')
|
||||
| map('combine', {'max_age_hours': backup_audit_pbs_max_age_hours})
|
||||
| list }}
|
||||
|
||||
backup_audit_restic_profiles: []
|
||||
backup_audit_metrics_dir: /var/lib/node_exporter/textfile_collector
|
||||
|
||||
Reference in New Issue
Block a user