From 8997304f93e4ea237fedbd087c69c8845f3f9cc6 Mon Sep 17 00:00:00 2001 From: Fernandez Ludovic Date: Thu, 5 Mar 2026 18:13:51 +0100 Subject: [PATCH] chore: minor changes --- providers/dns/acmedns/acmedns.go | 52 +++++++++---------- providers/dns/active24/active24.go | 2 + providers/dns/aliesa/aliesa.go | 3 ++ providers/dns/alwaysdata/alwaysdata.go | 3 ++ providers/dns/artfiles/artfiles.go | 3 ++ providers/dns/axelname/axelname.go | 3 ++ providers/dns/azion/azion.go | 3 ++ providers/dns/baiducloud/baiducloud.go | 3 ++ providers/dns/binarylane/binarylane.go | 3 ++ providers/dns/bluecatv2/bluecatv2.go | 3 ++ providers/dns/ddnss/ddnss.go | 3 ++ providers/dns/dnsexit/dnsexit.go | 3 ++ providers/dns/dnshomede/dnshomede.go | 3 ++ providers/dns/dyndnsfree/dyndnsfree.go | 3 ++ providers/dns/edgeone/edgeone.go | 3 ++ providers/dns/f5xc/f5xc.go | 3 ++ providers/dns/gigahostno/gigahostno.go | 3 ++ providers/dns/gravity/gravity.go | 3 ++ providers/dns/hostinger/hostinger.go | 3 ++ providers/dns/internal/active24/provider.go | 3 ++ providers/dns/ionoscloud/ionoscloud.go | 3 ++ providers/dns/ispconfig/ispconfig.go | 3 ++ providers/dns/jdcloud/jdcloud.go | 3 ++ providers/dns/keyhelp/keyhelp.go | 3 ++ providers/dns/leaseweb/leaseweb.go | 3 ++ providers/dns/manageengine/manageengine.go | 3 ++ providers/dns/manual/manual.go | 3 ++ providers/dns/metaregistrar/metaregistrar.go | 3 ++ providers/dns/myaddr/myaddr.go | 3 ++ providers/dns/namesurfer/namesurfer.go | 3 ++ providers/dns/octenium/octenium.go | 3 ++ .../dns/rackspace/internal/client_test.go | 4 +- providers/dns/selectelv2/selectelv2.go | 3 ++ providers/dns/spaceship/spaceship.go | 3 ++ providers/dns/syse/syse.go | 3 ++ providers/dns/todaynic/todaynic.go | 3 ++ providers/dns/webnamesca/webnamesca.go | 3 ++ providers/dns/websupport/websupport.go | 2 + providers/dns/zoneedit/zoneedit.go | 3 ++ 39 files changed, 137 insertions(+), 28 deletions(-) diff --git a/providers/dns/acmedns/acmedns.go b/providers/dns/acmedns/acmedns.go index 69ebb50cb..458723bea 100644 --- a/providers/dns/acmedns/acmedns.go +++ b/providers/dns/acmedns/acmedns.go @@ -113,32 +113,6 @@ func NewDNSProviderConfig(config *Config) (*DNSProvider, error) { }, nil } -// ErrCNAMERequired is returned by Present when the Domain indicated had no -// existing ACME-DNS account in the Storage and additional setup is required. -// The user must create a CNAME in the DNS zone for Domain that aliases FQDN -// to Target in order to complete setup for the ACME-DNS account that was created. -type ErrCNAMERequired struct { - // The Domain that is being issued for. - Domain string - // The alias of the CNAME (left hand DNS label). - FQDN string - // The RDATA of the CNAME (right hand side, canonical name). - Target string -} - -// Error returns a descriptive message for the ErrCNAMERequired instance telling -// the user that a CNAME needs to be added to the DNS zone of c.Domain before -// the ACME-DNS hook will work. -// The CNAME to be created should be of the form: {{ c.FQDN }} CNAME {{ c.Target }}. -func (e ErrCNAMERequired) Error() string { - return fmt.Sprintf("acme-dns: new account created for %q. "+ - "To complete setup for %q you must provision the following "+ - "CNAME in your DNS zone and re-run this provider when it is "+ - "in place:\n"+ - "%s CNAME %s.", - e.Domain, e.Domain, e.FQDN, e.Target) -} - // Present creates a TXT record to fulfill the DNS-01 challenge. // If there is an existing account for the domain in the provider's storage // then it will be used to set the challenge response TXT record with the ACME-DNS server and issuance will continue. @@ -236,3 +210,29 @@ func getStorage(config *Config) (goacmedns.Storage, error) { return st, nil } + +// ErrCNAMERequired is returned by Present when the Domain indicated had no +// existing ACME-DNS account in the Storage and additional setup is required. +// The user must create a CNAME in the DNS zone for Domain that aliases FQDN +// to Target in order to complete setup for the ACME-DNS account that was created. +type ErrCNAMERequired struct { + // The Domain that is being issued for. + Domain string + // The alias of the CNAME (left hand DNS label). + FQDN string + // The RDATA of the CNAME (right hand side, canonical name). + Target string +} + +// Error returns a descriptive message for the ErrCNAMERequired instance telling +// the user that a CNAME needs to be added to the DNS zone of c.Domain before +// the ACME-DNS hook will work. +// The CNAME to be created should be of the form: {{ c.FQDN }} CNAME {{ c.Target }}. +func (e ErrCNAMERequired) Error() string { + return fmt.Sprintf("acme-dns: new account created for %q. "+ + "To complete setup for %q you must provision the following "+ + "CNAME in your DNS zone and re-run this provider when it is "+ + "in place:\n"+ + "%s CNAME %s.", + e.Domain, e.Domain, e.FQDN, e.Target) +} diff --git a/providers/dns/active24/active24.go b/providers/dns/active24/active24.go index d5778062d..bd73b5645 100644 --- a/providers/dns/active24/active24.go +++ b/providers/dns/active24/active24.go @@ -29,6 +29,8 @@ const ( EnvHTTPTimeout = envNamespace + "HTTP_TIMEOUT" ) +var _ challenge.ProviderTimeout = (*DNSProvider)(nil) + // Config is used to configure the creation of the DNSProvider. type Config = active24.Config diff --git a/providers/dns/aliesa/aliesa.go b/providers/dns/aliesa/aliesa.go index 7b659e348..a0e5d7806 100644 --- a/providers/dns/aliesa/aliesa.go +++ b/providers/dns/aliesa/aliesa.go @@ -12,6 +12,7 @@ import ( "github.com/alibabacloud-go/tea/dara" "github.com/aliyun/credentials-go/credentials" esa "github.com/go-acme/esa-20240910/v2/client" + "github.com/go-acme/lego/v5/challenge" "github.com/go-acme/lego/v5/challenge/dns01" "github.com/go-acme/lego/v5/internal/env" "github.com/go-acme/lego/v5/internal/ptr" @@ -35,6 +36,8 @@ const ( const defaultRegionID = "cn-hangzhou" +var _ challenge.ProviderTimeout = (*DNSProvider)(nil) + // Config is used to configure the creation of the DNSProvider. type Config struct { RAMRole string diff --git a/providers/dns/alwaysdata/alwaysdata.go b/providers/dns/alwaysdata/alwaysdata.go index 22361ffa3..02c069102 100644 --- a/providers/dns/alwaysdata/alwaysdata.go +++ b/providers/dns/alwaysdata/alwaysdata.go @@ -8,6 +8,7 @@ import ( "net/http" "time" + "github.com/go-acme/lego/v5/challenge" "github.com/go-acme/lego/v5/challenge/dns01" "github.com/go-acme/lego/v5/internal/env" "github.com/go-acme/lego/v5/providers/dns/alwaysdata/internal" @@ -27,6 +28,8 @@ const ( EnvHTTPTimeout = envNamespace + "HTTP_TIMEOUT" ) +var _ challenge.ProviderTimeout = (*DNSProvider)(nil) + // Config is used to configure the creation of the DNSProvider. type Config struct { APIKey string diff --git a/providers/dns/artfiles/artfiles.go b/providers/dns/artfiles/artfiles.go index 1072418af..7990c9581 100644 --- a/providers/dns/artfiles/artfiles.go +++ b/providers/dns/artfiles/artfiles.go @@ -10,6 +10,7 @@ import ( "slices" "time" + "github.com/go-acme/lego/v5/challenge" "github.com/go-acme/lego/v5/challenge/dns01" "github.com/go-acme/lego/v5/internal/env" "github.com/go-acme/lego/v5/providers/dns/artfiles/internal" @@ -28,6 +29,8 @@ const ( EnvHTTPTimeout = envNamespace + "HTTP_TIMEOUT" ) +var _ challenge.ProviderTimeout = (*DNSProvider)(nil) + // Config is used to configure the creation of the DNSProvider. type Config struct { Username string diff --git a/providers/dns/axelname/axelname.go b/providers/dns/axelname/axelname.go index 82500efb6..5e36a7a57 100644 --- a/providers/dns/axelname/axelname.go +++ b/providers/dns/axelname/axelname.go @@ -8,6 +8,7 @@ import ( "net/http" "time" + "github.com/go-acme/lego/v5/challenge" "github.com/go-acme/lego/v5/challenge/dns01" "github.com/go-acme/lego/v5/internal/env" "github.com/go-acme/lego/v5/providers/dns/axelname/internal" @@ -27,6 +28,8 @@ const ( EnvHTTPTimeout = envNamespace + "HTTP_TIMEOUT" ) +var _ challenge.ProviderTimeout = (*DNSProvider)(nil) + // Config is used to configure the creation of the DNSProvider. type Config struct { Nickname string diff --git a/providers/dns/azion/azion.go b/providers/dns/azion/azion.go index 24fafd867..a16459cac 100644 --- a/providers/dns/azion/azion.go +++ b/providers/dns/azion/azion.go @@ -9,6 +9,7 @@ import ( "time" "github.com/aziontech/azionapi-go-sdk/idns" + "github.com/go-acme/lego/v5/challenge" "github.com/go-acme/lego/v5/challenge/dns01" "github.com/go-acme/lego/v5/internal/env" "github.com/go-acme/lego/v5/providers/dns/internal/clientdebug" @@ -27,6 +28,8 @@ const ( EnvHTTPTimeout = envNamespace + "HTTP_TIMEOUT" ) +var _ challenge.ProviderTimeout = (*DNSProvider)(nil) + // Config is used to configure the creation of the DNSProvider. type Config struct { PersonalToken string diff --git a/providers/dns/baiducloud/baiducloud.go b/providers/dns/baiducloud/baiducloud.go index d35197adb..cc3f503fc 100644 --- a/providers/dns/baiducloud/baiducloud.go +++ b/providers/dns/baiducloud/baiducloud.go @@ -8,6 +8,7 @@ import ( "time" baidudns "github.com/baidubce/bce-sdk-go/services/dns" + "github.com/go-acme/lego/v5/challenge" "github.com/go-acme/lego/v5/challenge/dns01" "github.com/go-acme/lego/v5/internal/env" "github.com/go-acme/lego/v5/internal/ptr" @@ -28,6 +29,8 @@ const ( // 300 is the minimum TTL for free users. const defaultTTL = 300 +var _ challenge.ProviderTimeout = (*DNSProvider)(nil) + // Config is used to configure the creation of the DNSProvider. type Config struct { AccessKeyID string diff --git a/providers/dns/binarylane/binarylane.go b/providers/dns/binarylane/binarylane.go index 0c25b0d6c..e05f98562 100644 --- a/providers/dns/binarylane/binarylane.go +++ b/providers/dns/binarylane/binarylane.go @@ -9,6 +9,7 @@ import ( "sync" "time" + "github.com/go-acme/lego/v5/challenge" "github.com/go-acme/lego/v5/challenge/dns01" "github.com/go-acme/lego/v5/internal/env" "github.com/go-acme/lego/v5/providers/dns/binarylane/internal" @@ -27,6 +28,8 @@ const ( EnvHTTPTimeout = envNamespace + "HTTP_TIMEOUT" ) +var _ challenge.ProviderTimeout = (*DNSProvider)(nil) + // Config is used to configure the creation of the DNSProvider. type Config struct { APIToken string diff --git a/providers/dns/bluecatv2/bluecatv2.go b/providers/dns/bluecatv2/bluecatv2.go index fb0e205a3..a3235872b 100644 --- a/providers/dns/bluecatv2/bluecatv2.go +++ b/providers/dns/bluecatv2/bluecatv2.go @@ -9,6 +9,7 @@ import ( "sync" "time" + "github.com/go-acme/lego/v5/challenge" "github.com/go-acme/lego/v5/challenge/dns01" "github.com/go-acme/lego/v5/internal/env" "github.com/go-acme/lego/v5/providers/dns/bluecatv2/internal" @@ -32,6 +33,8 @@ const ( EnvHTTPTimeout = envNamespace + "HTTP_TIMEOUT" ) +var _ challenge.ProviderTimeout = (*DNSProvider)(nil) + // Config is used to configure the creation of the DNSProvider. type Config struct { ServerURL string diff --git a/providers/dns/ddnss/ddnss.go b/providers/dns/ddnss/ddnss.go index 0c7a8477e..f5fedd2d6 100644 --- a/providers/dns/ddnss/ddnss.go +++ b/providers/dns/ddnss/ddnss.go @@ -8,6 +8,7 @@ import ( "net/http" "time" + "github.com/go-acme/lego/v5/challenge" "github.com/go-acme/lego/v5/challenge/dns01" "github.com/go-acme/lego/v5/internal/env" "github.com/go-acme/lego/v5/providers/dns/ddnss/internal" @@ -27,6 +28,8 @@ const ( EnvSequenceInterval = envNamespace + "SEQUENCE_INTERVAL" ) +var _ challenge.ProviderTimeout = (*DNSProvider)(nil) + // Config is used to configure the creation of the DNSProvider. type Config struct { Key string diff --git a/providers/dns/dnsexit/dnsexit.go b/providers/dns/dnsexit/dnsexit.go index 525db4ae8..480b658cb 100644 --- a/providers/dns/dnsexit/dnsexit.go +++ b/providers/dns/dnsexit/dnsexit.go @@ -8,6 +8,7 @@ import ( "net/http" "time" + "github.com/go-acme/lego/v5/challenge" "github.com/go-acme/lego/v5/challenge/dns01" "github.com/go-acme/lego/v5/internal/env" "github.com/go-acme/lego/v5/providers/dns/dnsexit/internal" @@ -26,6 +27,8 @@ const ( EnvHTTPTimeout = envNamespace + "HTTP_TIMEOUT" ) +var _ challenge.ProviderTimeout = (*DNSProvider)(nil) + // Config is used to configure the creation of the DNSProvider. type Config struct { APIKey string diff --git a/providers/dns/dnshomede/dnshomede.go b/providers/dns/dnshomede/dnshomede.go index 4c4292e41..36baf53c1 100644 --- a/providers/dns/dnshomede/dnshomede.go +++ b/providers/dns/dnshomede/dnshomede.go @@ -8,6 +8,7 @@ import ( "net/http" "time" + "github.com/go-acme/lego/v5/challenge" "github.com/go-acme/lego/v5/challenge/dns01" "github.com/go-acme/lego/v5/internal/env" "github.com/go-acme/lego/v5/providers/dns/dnshomede/internal" @@ -26,6 +27,8 @@ const ( EnvSequenceInterval = envNamespace + "SEQUENCE_INTERVAL" ) +var _ challenge.ProviderTimeout = (*DNSProvider)(nil) + // Config is used to configure the creation of the DNSProvider. type Config struct { Credentials map[string]string diff --git a/providers/dns/dyndnsfree/dyndnsfree.go b/providers/dns/dyndnsfree/dyndnsfree.go index a142354ee..b5eeb43a9 100644 --- a/providers/dns/dyndnsfree/dyndnsfree.go +++ b/providers/dns/dyndnsfree/dyndnsfree.go @@ -8,6 +8,7 @@ import ( "net/http" "time" + "github.com/go-acme/lego/v5/challenge" "github.com/go-acme/lego/v5/challenge/dns01" "github.com/go-acme/lego/v5/internal/env" "github.com/go-acme/lego/v5/providers/dns/dyndnsfree/internal" @@ -26,6 +27,8 @@ const ( EnvHTTPTimeout = envNamespace + "HTTP_TIMEOUT" ) +var _ challenge.ProviderTimeout = (*DNSProvider)(nil) + // Config is used to configure the creation of the DNSProvider. type Config struct { Username string diff --git a/providers/dns/edgeone/edgeone.go b/providers/dns/edgeone/edgeone.go index 7c113eea0..c916abeac 100644 --- a/providers/dns/edgeone/edgeone.go +++ b/providers/dns/edgeone/edgeone.go @@ -9,6 +9,7 @@ import ( "sync" "time" + "github.com/go-acme/lego/v5/challenge" "github.com/go-acme/lego/v5/challenge/dns01" "github.com/go-acme/lego/v5/internal/env" "github.com/go-acme/lego/v5/internal/ptr" @@ -34,6 +35,8 @@ const ( EnvHTTPTimeout = envNamespace + "HTTP_TIMEOUT" ) +var _ challenge.ProviderTimeout = (*DNSProvider)(nil) + // Config is used to configure the creation of the DNSProvider. type Config struct { SecretID string diff --git a/providers/dns/f5xc/f5xc.go b/providers/dns/f5xc/f5xc.go index 1b6dc856d..628a56ae9 100644 --- a/providers/dns/f5xc/f5xc.go +++ b/providers/dns/f5xc/f5xc.go @@ -9,6 +9,7 @@ import ( "time" "github.com/cenkalti/backoff/v5" + "github.com/go-acme/lego/v5/challenge" "github.com/go-acme/lego/v5/challenge/dns01" "github.com/go-acme/lego/v5/internal/env" "github.com/go-acme/lego/v5/internal/wait" @@ -31,6 +32,8 @@ const ( EnvHTTPTimeout = envNamespace + "HTTP_TIMEOUT" ) +var _ challenge.ProviderTimeout = (*DNSProvider)(nil) + // Config is used to configure the creation of the DNSProvider. type Config struct { APIToken string diff --git a/providers/dns/gigahostno/gigahostno.go b/providers/dns/gigahostno/gigahostno.go index db418543c..4764a73f5 100644 --- a/providers/dns/gigahostno/gigahostno.go +++ b/providers/dns/gigahostno/gigahostno.go @@ -9,6 +9,7 @@ import ( "sync" "time" + "github.com/go-acme/lego/v5/challenge" "github.com/go-acme/lego/v5/challenge/dns01" "github.com/go-acme/lego/v5/internal/env" "github.com/go-acme/lego/v5/providers/dns/gigahostno/internal" @@ -29,6 +30,8 @@ const ( EnvHTTPTimeout = envNamespace + "HTTP_TIMEOUT" ) +var _ challenge.ProviderTimeout = (*DNSProvider)(nil) + // Config is used to configure the creation of the DNSProvider. type Config struct { Username string diff --git a/providers/dns/gravity/gravity.go b/providers/dns/gravity/gravity.go index 4da6004f7..cecb0c812 100644 --- a/providers/dns/gravity/gravity.go +++ b/providers/dns/gravity/gravity.go @@ -9,6 +9,7 @@ import ( "sync" "time" + "github.com/go-acme/lego/v5/challenge" "github.com/go-acme/lego/v5/challenge/dns01" "github.com/go-acme/lego/v5/internal/env" "github.com/go-acme/lego/v5/providers/dns/gravity/internal" @@ -30,6 +31,8 @@ const ( EnvSequenceInterval = envNamespace + "SEQUENCE_INTERVAL" ) +var _ challenge.ProviderTimeout = (*DNSProvider)(nil) + // Config is used to configure the creation of the DNSProvider. type Config struct { Username string diff --git a/providers/dns/hostinger/hostinger.go b/providers/dns/hostinger/hostinger.go index ecdb9648a..cf3ae19ae 100644 --- a/providers/dns/hostinger/hostinger.go +++ b/providers/dns/hostinger/hostinger.go @@ -9,6 +9,7 @@ import ( "strconv" "time" + "github.com/go-acme/lego/v5/challenge" "github.com/go-acme/lego/v5/challenge/dns01" "github.com/go-acme/lego/v5/internal/env" "github.com/go-acme/lego/v5/providers/dns/hostinger/internal" @@ -27,6 +28,8 @@ const ( EnvHTTPTimeout = envNamespace + "HTTP_TIMEOUT" ) +var _ challenge.ProviderTimeout = (*DNSProvider)(nil) + // Config is used to configure the creation of the DNSProvider. type Config struct { APIToken string diff --git a/providers/dns/internal/active24/provider.go b/providers/dns/internal/active24/provider.go index c6212a164..44b77317a 100644 --- a/providers/dns/internal/active24/provider.go +++ b/providers/dns/internal/active24/provider.go @@ -9,11 +9,14 @@ import ( "strconv" "time" + "github.com/go-acme/lego/v5/challenge" "github.com/go-acme/lego/v5/challenge/dns01" "github.com/go-acme/lego/v5/providers/dns/internal/active24/internal" "github.com/go-acme/lego/v5/providers/dns/internal/clientdebug" ) +var _ challenge.ProviderTimeout = (*DNSProvider)(nil) + // Config is used to configure the creation of the DNSProvider. type Config struct { APIKey string diff --git a/providers/dns/ionoscloud/ionoscloud.go b/providers/dns/ionoscloud/ionoscloud.go index 7cbe4492e..6fbd84b18 100644 --- a/providers/dns/ionoscloud/ionoscloud.go +++ b/providers/dns/ionoscloud/ionoscloud.go @@ -9,6 +9,7 @@ import ( "sync" "time" + "github.com/go-acme/lego/v5/challenge" "github.com/go-acme/lego/v5/challenge/dns01" "github.com/go-acme/lego/v5/internal/env" "github.com/go-acme/lego/v5/providers/dns/internal/clientdebug" @@ -27,6 +28,8 @@ const ( EnvHTTPTimeout = envNamespace + "HTTP_TIMEOUT" ) +var _ challenge.ProviderTimeout = (*DNSProvider)(nil) + // Config is used to configure the creation of the DNSProvider. type Config struct { APIToken string diff --git a/providers/dns/ispconfig/ispconfig.go b/providers/dns/ispconfig/ispconfig.go index b7ba69412..cb89668aa 100644 --- a/providers/dns/ispconfig/ispconfig.go +++ b/providers/dns/ispconfig/ispconfig.go @@ -11,6 +11,7 @@ import ( "sync" "time" + "github.com/go-acme/lego/v5/challenge" "github.com/go-acme/lego/v5/challenge/dns01" "github.com/go-acme/lego/v5/internal/env" "github.com/go-acme/lego/v5/providers/dns/internal/clientdebug" @@ -32,6 +33,8 @@ const ( EnvInsecureSkipVerify = envNamespace + "INSECURE_SKIP_VERIFY" ) +var _ challenge.ProviderTimeout = (*DNSProvider)(nil) + // Config is used to configure the creation of the DNSProvider. type Config struct { ServerURL string diff --git a/providers/dns/jdcloud/jdcloud.go b/providers/dns/jdcloud/jdcloud.go index 9cb837044..6dca37e88 100644 --- a/providers/dns/jdcloud/jdcloud.go +++ b/providers/dns/jdcloud/jdcloud.go @@ -13,6 +13,7 @@ import ( "github.com/go-acme/jdcloud-sdk-go/services/domainservice/apis" jdcclient "github.com/go-acme/jdcloud-sdk-go/services/domainservice/client" domainservice "github.com/go-acme/jdcloud-sdk-go/services/domainservice/models" + "github.com/go-acme/lego/v5/challenge" "github.com/go-acme/lego/v5/challenge/dns01" "github.com/go-acme/lego/v5/internal/env" ) @@ -31,6 +32,8 @@ const ( EnvHTTPTimeout = envNamespace + "HTTP_TIMEOUT" ) +var _ challenge.ProviderTimeout = (*DNSProvider)(nil) + // Config is used to configure the creation of the DNSProvider. type Config struct { AccessKeyID string diff --git a/providers/dns/keyhelp/keyhelp.go b/providers/dns/keyhelp/keyhelp.go index ef9f2c5de..9d8f4a2b6 100644 --- a/providers/dns/keyhelp/keyhelp.go +++ b/providers/dns/keyhelp/keyhelp.go @@ -9,6 +9,7 @@ import ( "sync" "time" + "github.com/go-acme/lego/v5/challenge" "github.com/go-acme/lego/v5/challenge/dns01" "github.com/go-acme/lego/v5/internal/env" "github.com/go-acme/lego/v5/providers/dns/internal/clientdebug" @@ -28,6 +29,8 @@ const ( EnvHTTPTimeout = envNamespace + "HTTP_TIMEOUT" ) +var _ challenge.ProviderTimeout = (*DNSProvider)(nil) + // Config is used to configure the creation of the DNSProvider. type Config struct { BaseURL string diff --git a/providers/dns/leaseweb/leaseweb.go b/providers/dns/leaseweb/leaseweb.go index a8f91a534..08a806be5 100644 --- a/providers/dns/leaseweb/leaseweb.go +++ b/providers/dns/leaseweb/leaseweb.go @@ -8,6 +8,7 @@ import ( "net/http" "time" + "github.com/go-acme/lego/v5/challenge" "github.com/go-acme/lego/v5/challenge/dns01" "github.com/go-acme/lego/v5/internal/env" "github.com/go-acme/lego/v5/providers/dns/internal/clientdebug" @@ -26,6 +27,8 @@ const ( EnvHTTPTimeout = envNamespace + "HTTP_TIMEOUT" ) +var _ challenge.ProviderTimeout = (*DNSProvider)(nil) + // Config is used to configure the creation of the DNSProvider. type Config struct { APIKey string diff --git a/providers/dns/manageengine/manageengine.go b/providers/dns/manageengine/manageengine.go index bfeb6a5b6..fa7087f83 100644 --- a/providers/dns/manageengine/manageengine.go +++ b/providers/dns/manageengine/manageengine.go @@ -9,6 +9,7 @@ import ( "strings" "time" + "github.com/go-acme/lego/v5/challenge" "github.com/go-acme/lego/v5/challenge/dns01" "github.com/go-acme/lego/v5/internal/env" "github.com/go-acme/lego/v5/providers/dns/internal/clientdebug" @@ -27,6 +28,8 @@ const ( EnvPollingInterval = envNamespace + "POLLING_INTERVAL" ) +var _ challenge.ProviderTimeout = (*DNSProvider)(nil) + // Config is used to configure the creation of the DNSProvider. type Config struct { ClientID string diff --git a/providers/dns/manual/manual.go b/providers/dns/manual/manual.go index 945346703..84835f3cc 100644 --- a/providers/dns/manual/manual.go +++ b/providers/dns/manual/manual.go @@ -7,6 +7,7 @@ import ( "os" "time" + "github.com/go-acme/lego/v5/challenge" "github.com/go-acme/lego/v5/challenge/dns01" ) @@ -14,6 +15,8 @@ const ( dnsTemplate = `%s %d IN TXT %q` ) +var _ challenge.Provider = (*DNSProvider)(nil) + // DNSProvider is an implementation of the ChallengeProvider interface. type DNSProvider struct{} diff --git a/providers/dns/metaregistrar/metaregistrar.go b/providers/dns/metaregistrar/metaregistrar.go index ad0049c6a..adfb7a58b 100644 --- a/providers/dns/metaregistrar/metaregistrar.go +++ b/providers/dns/metaregistrar/metaregistrar.go @@ -9,6 +9,7 @@ import ( "strconv" "time" + "github.com/go-acme/lego/v5/challenge" "github.com/go-acme/lego/v5/challenge/dns01" "github.com/go-acme/lego/v5/internal/env" "github.com/go-acme/lego/v5/providers/dns/internal/clientdebug" @@ -27,6 +28,8 @@ const ( EnvHTTPTimeout = envNamespace + "HTTP_TIMEOUT" ) +var _ challenge.ProviderTimeout = (*DNSProvider)(nil) + // Config is used to configure the creation of the DNSProvider. type Config struct { APIToken string diff --git a/providers/dns/myaddr/myaddr.go b/providers/dns/myaddr/myaddr.go index a7b8771f1..96bab541a 100644 --- a/providers/dns/myaddr/myaddr.go +++ b/providers/dns/myaddr/myaddr.go @@ -9,6 +9,7 @@ import ( "strings" "time" + "github.com/go-acme/lego/v5/challenge" "github.com/go-acme/lego/v5/challenge/dns01" "github.com/go-acme/lego/v5/internal/env" "github.com/go-acme/lego/v5/providers/dns/internal/clientdebug" @@ -28,6 +29,8 @@ const ( EnvHTTPTimeout = envNamespace + "HTTP_TIMEOUT" ) +var _ challenge.ProviderTimeout = (*DNSProvider)(nil) + // Config is used to configure the creation of the DNSProvider. type Config struct { Credentials map[string]string diff --git a/providers/dns/namesurfer/namesurfer.go b/providers/dns/namesurfer/namesurfer.go index 6860bdd91..e98f9d284 100644 --- a/providers/dns/namesurfer/namesurfer.go +++ b/providers/dns/namesurfer/namesurfer.go @@ -11,6 +11,7 @@ import ( "sync" "time" + "github.com/go-acme/lego/v5/challenge" "github.com/go-acme/lego/v5/challenge/dns01" "github.com/go-acme/lego/v5/internal/env" "github.com/go-acme/lego/v5/providers/dns/internal/clientdebug" @@ -33,6 +34,8 @@ const ( EnvInsecureSkipVerify = envNamespace + "INSECURE_SKIP_VERIFY" ) +var _ challenge.ProviderTimeout = (*DNSProvider)(nil) + // Config is used to configure the creation of the DNSProvider. type Config struct { BaseURL string diff --git a/providers/dns/octenium/octenium.go b/providers/dns/octenium/octenium.go index 61fc6de56..d52410259 100644 --- a/providers/dns/octenium/octenium.go +++ b/providers/dns/octenium/octenium.go @@ -9,6 +9,7 @@ import ( "sync" "time" + "github.com/go-acme/lego/v5/challenge" "github.com/go-acme/lego/v5/challenge/dns01" "github.com/go-acme/lego/v5/internal/env" "github.com/go-acme/lego/v5/log" @@ -29,6 +30,8 @@ const ( EnvHTTPTimeout = envNamespace + "HTTP_TIMEOUT" ) +var _ challenge.ProviderTimeout = (*DNSProvider)(nil) + // Config is used to configure the creation of the DNSProvider. type Config struct { APIKey string diff --git a/providers/dns/rackspace/internal/client_test.go b/providers/dns/rackspace/internal/client_test.go index 58866273d..f00fea4d6 100644 --- a/providers/dns/rackspace/internal/client_test.go +++ b/providers/dns/rackspace/internal/client_test.go @@ -29,11 +29,11 @@ func TestClient_AddRecord(t *testing.T) { client := mockBuilder(). Route("POST /domains/1234/records", servermock.ResponseFromFixture("add-records.json"), - servermock.CheckRequestJSONBody(`{"records":[{"name":"exmaple.com","type":"TXT","data":"value1","ttl":120,"id":"abc"}]}`)). + servermock.CheckRequestJSONBody(`{"records":[{"name":"example.com","type":"TXT","data":"value1","ttl":120,"id":"abc"}]}`)). Build(t) record := Record{ - Name: "exmaple.com", + Name: "example.com", Type: "TXT", Data: "value1", TTL: 120, diff --git a/providers/dns/selectelv2/selectelv2.go b/providers/dns/selectelv2/selectelv2.go index 0be2b0f5e..1c66c7974 100644 --- a/providers/dns/selectelv2/selectelv2.go +++ b/providers/dns/selectelv2/selectelv2.go @@ -9,6 +9,7 @@ import ( "strings" "time" + "github.com/go-acme/lego/v5/challenge" "github.com/go-acme/lego/v5/challenge/dns01" "github.com/go-acme/lego/v5/internal/env" "github.com/go-acme/lego/v5/internal/useragent" @@ -52,6 +53,8 @@ const ( const tokenHeader = "X-Auth-Token" +var _ challenge.ProviderTimeout = (*DNSProvider)(nil) + var errNotFound = errors.New("rrset not found") // Config is used to configure the creation of the DNSProvider. diff --git a/providers/dns/spaceship/spaceship.go b/providers/dns/spaceship/spaceship.go index eb6d8e8d5..75b5df231 100644 --- a/providers/dns/spaceship/spaceship.go +++ b/providers/dns/spaceship/spaceship.go @@ -8,6 +8,7 @@ import ( "net/http" "time" + "github.com/go-acme/lego/v5/challenge" "github.com/go-acme/lego/v5/challenge/dns01" "github.com/go-acme/lego/v5/internal/env" "github.com/go-acme/lego/v5/providers/dns/internal/clientdebug" @@ -27,6 +28,8 @@ const ( EnvHTTPTimeout = envNamespace + "HTTP_TIMEOUT" ) +var _ challenge.ProviderTimeout = (*DNSProvider)(nil) + // Config is used to configure the creation of the DNSProvider. type Config struct { APIKey string diff --git a/providers/dns/syse/syse.go b/providers/dns/syse/syse.go index c48d8fb0f..49c204417 100644 --- a/providers/dns/syse/syse.go +++ b/providers/dns/syse/syse.go @@ -9,6 +9,7 @@ import ( "sync" "time" + "github.com/go-acme/lego/v5/challenge" "github.com/go-acme/lego/v5/challenge/dns01" "github.com/go-acme/lego/v5/internal/env" "github.com/go-acme/lego/v5/providers/dns/internal/clientdebug" @@ -27,6 +28,8 @@ const ( EnvHTTPTimeout = envNamespace + "HTTP_TIMEOUT" ) +var _ challenge.ProviderTimeout = (*DNSProvider)(nil) + // Config is used to configure the creation of the DNSProvider. type Config struct { Credentials map[string]string diff --git a/providers/dns/todaynic/todaynic.go b/providers/dns/todaynic/todaynic.go index f814d64aa..9a8853c87 100644 --- a/providers/dns/todaynic/todaynic.go +++ b/providers/dns/todaynic/todaynic.go @@ -10,6 +10,7 @@ import ( "sync" "time" + "github.com/go-acme/lego/v5/challenge" "github.com/go-acme/lego/v5/challenge/dns01" "github.com/go-acme/lego/v5/internal/env" "github.com/go-acme/lego/v5/providers/dns/internal/clientdebug" @@ -29,6 +30,8 @@ const ( EnvHTTPTimeout = envNamespace + "HTTP_TIMEOUT" ) +var _ challenge.ProviderTimeout = (*DNSProvider)(nil) + // Config is used to configure the creation of the DNSProvider. type Config struct { AuthUserID string diff --git a/providers/dns/webnamesca/webnamesca.go b/providers/dns/webnamesca/webnamesca.go index 8bad14fe9..15bd63fbe 100644 --- a/providers/dns/webnamesca/webnamesca.go +++ b/providers/dns/webnamesca/webnamesca.go @@ -8,6 +8,7 @@ import ( "net/http" "time" + "github.com/go-acme/lego/v5/challenge" "github.com/go-acme/lego/v5/challenge/dns01" "github.com/go-acme/lego/v5/internal/env" "github.com/go-acme/lego/v5/providers/dns/internal/clientdebug" @@ -27,6 +28,8 @@ const ( EnvHTTPTimeout = envNamespace + "HTTP_TIMEOUT" ) +var _ challenge.ProviderTimeout = (*DNSProvider)(nil) + // Config is used to configure the creation of the DNSProvider. type Config struct { APIUser string diff --git a/providers/dns/websupport/websupport.go b/providers/dns/websupport/websupport.go index d1cafa205..31923ca47 100644 --- a/providers/dns/websupport/websupport.go +++ b/providers/dns/websupport/websupport.go @@ -29,6 +29,8 @@ const ( EnvHTTPTimeout = envNamespace + "HTTP_TIMEOUT" ) +var _ challenge.ProviderTimeout = (*DNSProvider)(nil) + // Config is used to configure the creation of the DNSProvider. type Config = active24.Config diff --git a/providers/dns/zoneedit/zoneedit.go b/providers/dns/zoneedit/zoneedit.go index 861359bff..e3ba70269 100644 --- a/providers/dns/zoneedit/zoneedit.go +++ b/providers/dns/zoneedit/zoneedit.go @@ -8,6 +8,7 @@ import ( "net/http" "time" + "github.com/go-acme/lego/v5/challenge" "github.com/go-acme/lego/v5/challenge/dns01" "github.com/go-acme/lego/v5/internal/env" "github.com/go-acme/lego/v5/providers/dns/internal/clientdebug" @@ -26,6 +27,8 @@ const ( EnvHTTPTimeout = envNamespace + "HTTP_TIMEOUT" ) +var _ challenge.ProviderTimeout = (*DNSProvider)(nil) + // Config is used to configure the creation of the DNSProvider. type Config struct { User string