summaryrefslogtreecommitdiff
path: root/modules/caddytls/automation.go
diff options
context:
space:
mode:
authorMatt Holt <mholt@users.noreply.github.com>2023-07-11 13:10:58 -0600
committerGitHub <noreply@github.com>2023-07-11 19:10:58 +0000
commit0e2c7e1d35b287fc0e56d6db2951f791e09b5a37 (patch)
tree3669f5d01fa351bda933d3796c50a72da9942a01 /modules/caddytls/automation.go
parent7ceef91295343237f5b81ed00e3ba7e8e594d603 (diff)
caddytls: Reuse certificate cache through reloads (#5623)
* caddytls: Don't purge cert cache on config reload * Update CertMagic This actually avoids reloading managed certs from storage when already in the cache, d'oh. * Fix bug; re-implement HasCertificateForSubject * Update go.mod: CertMagic tag
Diffstat (limited to 'modules/caddytls/automation.go')
-rw-r--r--modules/caddytls/automation.go4
1 files changed, 3 insertions, 1 deletions
diff --git a/modules/caddytls/automation.go b/modules/caddytls/automation.go
index de88201..114d7aa 100644
--- a/modules/caddytls/automation.go
+++ b/modules/caddytls/automation.go
@@ -294,7 +294,9 @@ func (ap *AutomationPolicy) Provision(tlsApp *TLS) error {
Issuers: issuers,
Logger: tlsApp.logger,
}
- ap.magic = certmagic.New(tlsApp.certCache, template)
+ certCacheMu.RLock()
+ ap.magic = certmagic.New(certCache, template)
+ certCacheMu.RUnlock()
// sometimes issuers may need the parent certmagic.Config in
// order to function properly (for example, ACMEIssuer needs