fix(backup): restore reboot freshness readback
Some checks failed
CD Pipeline / workflow-shape (push) Successful in 0s
CD Pipeline / cancel-stale-cd (push) Has been skipped
CD Pipeline / tests (push) Failing after 2m1s
CD Pipeline / build-and-deploy (push) Has been skipped
CD Pipeline / post-deploy-checks (push) Has been skipped
Some checks failed
CD Pipeline / workflow-shape (push) Successful in 0s
CD Pipeline / cancel-stale-cd (push) Has been skipped
CD Pipeline / tests (push) Failing after 2m1s
CD Pipeline / build-and-deploy (push) Has been skipped
CD Pipeline / post-deploy-checks (push) Has been skipped
This commit is contained in:
@@ -84,3 +84,33 @@ def test_gitea_bundle_metrics_fail_when_checksum_missing(tmp_path: Path, monkeyp
|
||||
assert all_ok == 0
|
||||
assert 'awoooi_gitea_bundle_checksum_missing_count{host="188"' in rendered
|
||||
assert rendered.rstrip().endswith(" 0")
|
||||
|
||||
|
||||
def test_dr_phase_does_not_regress_when_full_offsite_is_fresh_and_partial_is_stale(
|
||||
tmp_path: Path, monkeypatch
|
||||
) -> None:
|
||||
exporter = load_exporter()
|
||||
offsite_dir = tmp_path / "offsite"
|
||||
escrow_dir = tmp_path / "escrow"
|
||||
offsite_dir.mkdir()
|
||||
escrow_dir.mkdir()
|
||||
now = 1_782_900_000
|
||||
|
||||
monkeypatch.setattr(exporter, "OFFSITE_STATUS_DIR", offsite_dir)
|
||||
monkeypatch.setattr(exporter, "ESCROW_EVIDENCE_DIR", escrow_dir)
|
||||
monkeypatch.setattr(exporter.time, "time", lambda: now)
|
||||
monkeypatch.setattr(exporter, "_b2_configured", lambda: False)
|
||||
monkeypatch.setattr(exporter, "_rclone_configured", lambda: True)
|
||||
(offsite_dir / "rclone-last-success").write_text(str(now - 3600), encoding="utf-8")
|
||||
(offsite_dir / "rclone-partial-last-success").write_text(str(now - 72 * 3600), encoding="utf-8")
|
||||
|
||||
metrics = exporter._offsite_and_escrow_metric_lines("110")
|
||||
rendered = "\n".join(metrics)
|
||||
|
||||
assert 'awoooi_backup_offsite_fresh{host="110",provider="rclone",max_age_hours="48"} 1' in rendered
|
||||
assert (
|
||||
'awoooi_backup_offsite_partial_fresh{host="110",provider="rclone",scope="partial",max_age_hours="48"} 0'
|
||||
in rendered
|
||||
)
|
||||
assert 'awoooi_backup_dr_credential_escrow_missing_count{host="110"} 5' in rendered
|
||||
assert 'awoooi_backup_dr_phase{host="110",next_step="complete_credential_escrow_review"} 3' in rendered
|
||||
|
||||
Reference in New Issue
Block a user