duckdns: fix CNAME support (#1732)

This commit is contained in:
Ludovic Fernandez 2022-10-10 10:42:27 +02:00 committed by GitHub
parent 87ee39a1dc
commit 79fcc56402
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 11 additions and 9 deletions

View file

@ -12,6 +12,7 @@
- **[dnsprovider]** pdns: notify secondary servers after updates
### Changed:
- **[dnsprovider]** allinkl: removed deprecated sha1 hashing
- **[dnsprovider]** auroradns: update authentification
- **[dnsprovider]** dnspod: deprecated. Use Tencent Cloud instead.

View file

@ -79,13 +79,14 @@ func NewDNSProviderConfig(config *Config) (*DNSProvider, error) {
// Present creates a TXT record to fulfill the dns-01 challenge.
func (d *DNSProvider) Present(domain, token, keyAuth string) error {
_, txtRecord := dns01.GetRecord(domain, keyAuth)
return d.updateTxtRecord(domain, d.config.Token, txtRecord, false)
fqdn, txtRecord := dns01.GetRecord(domain, keyAuth)
return d.updateTxtRecord(dns01.UnFqdn(fqdn), d.config.Token, txtRecord, false)
}
// CleanUp clears DuckDNS TXT record.
func (d *DNSProvider) CleanUp(domain, token, keyAuth string) error {
return d.updateTxtRecord(domain, d.config.Token, "", true)
fqdn, _ := dns01.GetRecord(domain, keyAuth)
return d.updateTxtRecord(dns01.UnFqdn(fqdn), d.config.Token, "", true)
}
// Timeout returns the timeout and interval to use when checking for DNS propagation.

View file

@ -107,32 +107,32 @@ func Test_getMainDomain(t *testing.T) {
},
{
desc: "explicit domain: sub domain",
domain: "sub.duckdns.org",
domain: "_acme-challenge.sub.duckdns.org",
expected: "sub.duckdns.org",
},
{
desc: "explicit domain: subsub domain",
domain: "my.sub.duckdns.org",
domain: "_acme-challenge.my.sub.duckdns.org",
expected: "sub.duckdns.org",
},
{
desc: "explicit domain: subsubsub domain",
domain: "my.sub.sub.duckdns.org",
domain: "_acme-challenge.my.sub.sub.duckdns.org",
expected: "sub.duckdns.org",
},
{
desc: "only subname: sub domain",
domain: "sub",
domain: "_acme-challenge.sub",
expected: "sub",
},
{
desc: "only subname: subsub domain",
domain: "my.sub",
domain: "_acme-challenge.my.sub",
expected: "sub",
},
{
desc: "only subname: subsubsub domain",
domain: "my.sub.sub",
domain: "_acme-challenge.my.sub.sub",
expected: "sub",
},
}