修复管理证书状态读取失败收敛

This commit is contained in:
xuans 2026-09-30 03:03:06 +08:00
parent b252b16724
commit 79ecea1f0a
2 changed files with 13 additions and 1 deletions

View File

@ -47,7 +47,7 @@ func (m *managementRenewal) RunRenewal(ctx context.Context, policy certificate.R
}
state, err := m.readState()
// 公网 IP 自签证书不进入域名的 ACME DNS 续期流程。
if state.Hostname == "" {
if err == nil && state.Hostname == "" {
return report, nil
}
report.Checked = 1

View File

@ -324,6 +324,18 @@ func TestManagementRenewalRecordsUnreadableCertificate(t *testing.T) {
}
}
func TestManagementRenewalRecordsUnreadableEmptyState(t *testing.T) {
f := newManagementFixture(t)
f.m.readState = func() (httpapi.ManagementCertificateState, error) {
return httpapi.ManagementCertificateState{}, errors.New("empty management certificate state read failure")
}
report, err := f.m.RunRenewal(t.Context(), f.policy, f.now)
if err == nil || report.Checked != 1 || report.Failed != 1 || f.issues != 0 {
t.Fatalf("empty state read failure was incorrectly skipped: %+v %v", report, err)
}
f.assertTask(t, "failed", 0)
}
type managementFailAudit struct {
repository.AuditRepository
}