Fix RenewInterval computation in ACME provider

This commit is contained in:
smasset-orange 2022-04-26 14:36:08 +02:00 committed by GitHub
parent 55addfefc8
commit 95257d2ee1
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 8 additions and 2 deletions

View file

@ -532,7 +532,7 @@ func (p *Provider) addCertificateForDomain(domain types.Domain, certificate, key
// The second (RenewInterval) is the interval between renew attempts. // The second (RenewInterval) is the interval between renew attempts.
func getCertificateRenewDurations(certificatesDuration int) (time.Duration, time.Duration) { func getCertificateRenewDurations(certificatesDuration int) (time.Duration, time.Duration) {
switch { switch {
case certificatesDuration >= 265*24: // >= 1 year case certificatesDuration >= 365*24: // >= 1 year
return 4 * 30 * 24 * time.Hour, 7 * 24 * time.Hour // 4 month, 1 week return 4 * 30 * 24 * time.Hour, 7 * 24 * time.Hour // 4 month, 1 week
case certificatesDuration >= 3*30*24: // >= 90 days case certificatesDuration >= 3*30*24: // >= 90 days
return 30 * 24 * time.Hour, 24 * time.Hour // 30 days, 1 day return 30 * 24 * time.Hour, 24 * time.Hour // 30 days, 1 day

View file

@ -608,11 +608,17 @@ func Test_getCertificateRenewDurations(t *testing.T) {
expectRenewInterval: time.Minute, expectRenewInterval: time.Minute,
}, },
{ {
desc: "1 Year certificates: 2 months renew period, 1 week renew interval", desc: "1 Year certificates: 4 months renew period, 1 week renew interval",
certificatesDurations: 24 * 365, certificatesDurations: 24 * 365,
expectRenewPeriod: time.Hour * 24 * 30 * 4, expectRenewPeriod: time.Hour * 24 * 30 * 4,
expectRenewInterval: time.Hour * 24 * 7, expectRenewInterval: time.Hour * 24 * 7,
}, },
{
desc: "265 Days certificates: 30 days renew period, 1 day renew interval",
certificatesDurations: 24 * 265,
expectRenewPeriod: time.Hour * 24 * 30,
expectRenewInterval: time.Hour * 24,
},
{ {
desc: "90 Days certificates: 30 days renew period, 1 day renew interval", desc: "90 Days certificates: 30 days renew period, 1 day renew interval",
certificatesDurations: 24 * 90, certificatesDurations: 24 * 90,