Compute PBS retention depth

This commit is contained in:
2026-05-31 07:40:42 +02:00
parent d249f257b8
commit 95ef28065a
4 changed files with 42 additions and 4 deletions
+16 -1
View File
@@ -438,10 +438,25 @@ def retention_policy_row(policy: object) -> list[object]:
getattr(policy, "keep_weekly", None),
getattr(policy, "keep_monthly", None),
getattr(policy, "keep_yearly", None),
getattr(policy, "max_depth", None),
display(retention_policy_depth(policy)),
]
def retention_policy_depth(policy: object) -> int | None:
values = [
getattr(policy, "keep_last", None),
getattr(policy, "keep_hourly", None),
getattr(policy, "keep_daily", None),
getattr(policy, "keep_weekly", None),
getattr(policy, "keep_monthly", None),
getattr(policy, "keep_yearly", None),
]
kept_versions = [value for value in values if isinstance(value, int)]
if not kept_versions:
return None
return sum(kept_versions)
def add_backup_jobs(story: list[object], styles: dict[str, ParagraphStyle], report_data: ReportData) -> None:
rows: list[list[object]] = [["ID", "Storage", "Horaire", "Actif", "Mode", "Selection", "Exclusion"]]
for job in report_data.backup_jobs: