feat(autocert): added all available lego supported dns providers

This commit is contained in:
yusing 2025-04-25 12:32:02 +08:00
parent 3947152336
commit 4410637f8b
8 changed files with 2913 additions and 50 deletions

141
go.mod
View file

@ -44,68 +44,205 @@ require (
replace github.com/docker/docker => github.com/godoxy-app/docker v0.0.0-20250418000134-7af8fd7b079e replace github.com/docker/docker => github.com/godoxy-app/docker v0.0.0-20250418000134-7af8fd7b079e
require ( require (
cloud.google.com/go/auth v0.16.1 // indirect
cloud.google.com/go/auth/oauth2adapt v0.2.8 // indirect
cloud.google.com/go/compute/metadata v0.6.0 // indirect
github.com/AdamSLevy/jsonrpc2/v14 v14.1.0 // indirect
github.com/Azure/azure-sdk-for-go/sdk/azcore v1.18.0 // indirect
github.com/Azure/azure-sdk-for-go/sdk/azidentity v1.9.0 // indirect
github.com/Azure/azure-sdk-for-go/sdk/internal v1.11.1 // indirect
github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/dns/armdns v1.2.0 // indirect
github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/privatedns/armprivatedns v1.3.0 // indirect
github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/resourcegraph/armresourcegraph v0.9.0 // indirect
github.com/AzureAD/microsoft-authentication-library-for-go v1.4.2 // indirect
github.com/Microsoft/go-winio v0.6.2 // indirect github.com/Microsoft/go-winio v0.6.2 // indirect
github.com/OpenDNS/vegadns2client v0.0.0-20180418235048-a3fa4a771d87 // indirect
github.com/akamai/AkamaiOPEN-edgegrid-golang v1.2.2 // indirect
github.com/aliyun/alibaba-cloud-sdk-go v1.63.106 // indirect
github.com/andybalholm/cascadia v1.3.3 // indirect github.com/andybalholm/cascadia v1.3.3 // indirect
github.com/aws/aws-sdk-go-v2 v1.36.3 // indirect
github.com/aws/aws-sdk-go-v2/config v1.29.14 // indirect
github.com/aws/aws-sdk-go-v2/credentials v1.17.67 // indirect
github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.16.30 // indirect
github.com/aws/aws-sdk-go-v2/internal/configsources v1.3.34 // indirect
github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.6.34 // indirect
github.com/aws/aws-sdk-go-v2/internal/ini v1.8.3 // indirect
github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.12.3 // indirect
github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.12.15 // indirect
github.com/aws/aws-sdk-go-v2/service/lightsail v1.43.2 // indirect
github.com/aws/aws-sdk-go-v2/service/route53 v1.51.1 // indirect
github.com/aws/aws-sdk-go-v2/service/sso v1.25.3 // indirect
github.com/aws/aws-sdk-go-v2/service/ssooidc v1.30.1 // indirect
github.com/aws/aws-sdk-go-v2/service/sts v1.33.19 // indirect
github.com/aws/smithy-go v1.22.3 // indirect
github.com/baidubce/bce-sdk-go v0.9.224 // indirect
github.com/benbjohnson/clock v1.3.5 // indirect
github.com/boombuler/barcode v1.0.2 // indirect
github.com/buger/goterm v1.0.4 // indirect github.com/buger/goterm v1.0.4 // indirect
github.com/bytedance/sonic/loader v0.2.4 // indirect github.com/bytedance/sonic/loader v0.2.4 // indirect
github.com/cenkalti/backoff/v4 v4.3.0 // indirect github.com/cenkalti/backoff/v4 v4.3.0 // indirect
github.com/civo/civogo v0.3.98 // indirect
github.com/cloudflare/cloudflare-go v0.115.0 // indirect github.com/cloudflare/cloudflare-go v0.115.0 // indirect
github.com/cloudwego/base64x v0.1.5 // indirect github.com/cloudwego/base64x v0.1.5 // indirect
github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc // indirect github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc // indirect
github.com/diskfs/go-diskfs v1.6.0 // indirect github.com/diskfs/go-diskfs v1.6.0 // indirect
github.com/distribution/reference v0.6.0 // indirect github.com/distribution/reference v0.6.0 // indirect
github.com/djherbis/times v1.6.0 // indirect github.com/djherbis/times v1.6.0 // indirect
github.com/dnsimple/dnsimple-go v1.7.0 // indirect
github.com/docker/go-connections v0.5.0 // indirect github.com/docker/go-connections v0.5.0 // indirect
github.com/docker/go-units v0.5.0 // indirect github.com/docker/go-units v0.5.0 // indirect
github.com/ebitengine/purego v0.8.2 // indirect github.com/ebitengine/purego v0.8.2 // indirect
github.com/exoscale/egoscale/v3 v3.1.14 // indirect
github.com/fatih/structs v1.1.0 // indirect
github.com/felixge/httpsnoop v1.0.4 // indirect
github.com/fxamacker/cbor/v2 v2.8.0 // indirect
github.com/gabriel-vasile/mimetype v1.4.9 // indirect github.com/gabriel-vasile/mimetype v1.4.9 // indirect
github.com/go-errors/errors v1.5.1 // indirect
github.com/go-jose/go-jose/v4 v4.1.0 // indirect github.com/go-jose/go-jose/v4 v4.1.0 // indirect
github.com/go-logr/logr v1.4.2 // indirect
github.com/go-logr/stdr v1.2.2 // indirect
github.com/go-ole/go-ole v1.3.0 // indirect github.com/go-ole/go-ole v1.3.0 // indirect
github.com/go-playground/locales v0.14.1 // indirect github.com/go-playground/locales v0.14.1 // indirect
github.com/go-playground/universal-translator v0.18.1 // indirect github.com/go-playground/universal-translator v0.18.1 // indirect
github.com/go-resty/resty/v2 v2.16.5 // indirect
github.com/go-task/slim-sprig/v3 v3.0.0 // indirect github.com/go-task/slim-sprig/v3 v3.0.0 // indirect
github.com/go-viper/mapstructure/v2 v2.2.1 // indirect
github.com/goccy/go-json v0.10.5 // indirect github.com/goccy/go-json v0.10.5 // indirect
github.com/gofrs/flock v0.12.1 // indirect
github.com/gogo/protobuf v1.3.2 // indirect github.com/gogo/protobuf v1.3.2 // indirect
github.com/google/go-querystring v1.1.0 // indirect github.com/google/go-querystring v1.1.0 // indirect
github.com/google/pprof v0.0.0-20250423184734-337e5dd93bb4 // indirect github.com/google/pprof v0.0.0-20250423184734-337e5dd93bb4 // indirect
github.com/google/s2a-go v0.1.9 // indirect
github.com/google/uuid v1.6.0 // indirect
github.com/googleapis/enterprise-certificate-proxy v0.3.6 // indirect
github.com/googleapis/gax-go/v2 v2.14.1 // indirect
github.com/gophercloud/gophercloud v1.14.1 // indirect
github.com/gophercloud/utils v0.0.0-20231010081019-80377eca5d56 // indirect
github.com/gorilla/websocket v1.5.3 // indirect github.com/gorilla/websocket v1.5.3 // indirect
github.com/hashicorp/go-cleanhttp v0.5.2 // indirect
github.com/hashicorp/go-retryablehttp v0.7.7 // indirect
github.com/hashicorp/go-uuid v1.0.3 // indirect
github.com/huaweicloud/huaweicloud-sdk-go-v3 v0.1.146 // indirect
github.com/iij/doapi v0.0.0-20190504054126-0bbf12d6d7df // indirect
github.com/infobloxopen/infoblox-go-client/v2 v2.9.0 // indirect
github.com/jinzhu/copier v0.4.0 // indirect github.com/jinzhu/copier v0.4.0 // indirect
github.com/jmespath/go-jmespath v0.4.0 // indirect
github.com/json-iterator/go v1.1.12 // indirect
github.com/k0kubun/go-ansi v0.0.0-20180517002512-3bf9e2903213 // indirect
github.com/klauspost/cpuid/v2 v2.2.10 // indirect github.com/klauspost/cpuid/v2 v2.2.10 // indirect
github.com/kr/pretty v0.3.1 // indirect github.com/kolo/xmlrpc v0.0.0-20220921171641-a4b6fa1dd06b // indirect
github.com/kylelemons/godebug v1.1.0 // indirect
github.com/labbsr0x/bindman-dns-webhook v1.0.2 // indirect
github.com/labbsr0x/goh v1.0.1 // indirect
github.com/leodido/go-urn v1.4.0 // indirect github.com/leodido/go-urn v1.4.0 // indirect
github.com/linode/linodego v1.49.0 // indirect
github.com/liquidweb/liquidweb-cli v0.7.0 // indirect
github.com/liquidweb/liquidweb-go v1.6.4 // indirect
github.com/lufia/plan9stats v0.0.0-20250317134145-8bc96cf8fc35 // indirect github.com/lufia/plan9stats v0.0.0-20250317134145-8bc96cf8fc35 // indirect
github.com/magefile/mage v1.15.0 // indirect github.com/magefile/mage v1.15.0 // indirect
github.com/mattn/go-colorable v0.1.14 // indirect github.com/mattn/go-colorable v0.1.14 // indirect
github.com/mattn/go-isatty v0.0.20 // indirect github.com/mattn/go-isatty v0.0.20 // indirect
github.com/miekg/dns v1.1.65 // indirect github.com/miekg/dns v1.1.65 // indirect
github.com/mimuret/golang-iij-dpf v0.9.1 // indirect
github.com/mitchellh/go-homedir v1.1.0 // indirect
github.com/mitchellh/mapstructure v1.5.0 // indirect
github.com/moby/docker-image-spec v1.3.1 // indirect github.com/moby/docker-image-spec v1.3.1 // indirect
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect
github.com/modern-go/reflect2 v1.0.2 // indirect
github.com/namedotcom/go v0.0.0-20180403034216-08470befbe04 // indirect
github.com/nrdcg/auroradns v1.1.0 // indirect
github.com/nrdcg/bunny-go v0.0.0-20250327222614-988a091fc7ea // indirect
github.com/nrdcg/desec v0.11.0 // indirect
github.com/nrdcg/freemyip v0.3.0 // indirect
github.com/nrdcg/goacmedns v0.2.0 // indirect
github.com/nrdcg/goinwx v0.11.0 // indirect
github.com/nrdcg/mailinabox v0.2.0 // indirect
github.com/nrdcg/namesilo v0.2.1 // indirect
github.com/nrdcg/nodion v0.1.0 // indirect
github.com/nrdcg/porkbun v0.4.0 // indirect github.com/nrdcg/porkbun v0.4.0 // indirect
github.com/nzdjb/go-metaname v1.0.0 // indirect
github.com/onsi/ginkgo/v2 v2.23.4 // indirect github.com/onsi/ginkgo/v2 v2.23.4 // indirect
github.com/opencontainers/go-digest v1.0.0 // indirect github.com/opencontainers/go-digest v1.0.0 // indirect
github.com/opencontainers/image-spec v1.1.1 // indirect github.com/opencontainers/image-spec v1.1.1 // indirect
github.com/opentracing/opentracing-go v1.2.1-0.20220228012449-10b1cf09e00b // indirect
github.com/oracle/oci-go-sdk/v65 v65.89.2 // indirect
github.com/ovh/go-ovh v1.7.0 // indirect github.com/ovh/go-ovh v1.7.0 // indirect
github.com/patrickmn/go-cache v2.1.0+incompatible // indirect
github.com/pelletier/go-toml/v2 v2.2.4 // indirect
github.com/peterhellberg/link v1.2.0 // indirect
github.com/pkg/browser v0.0.0-20240102092130-5ac0b6a4141c // indirect
github.com/pkg/errors v0.9.1 // indirect github.com/pkg/errors v0.9.1 // indirect
github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 // indirect github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 // indirect
github.com/power-devops/perfstat v0.0.0-20240221224432-82ca36839d55 // indirect github.com/power-devops/perfstat v0.0.0-20240221224432-82ca36839d55 // indirect
github.com/pquerna/otp v1.4.0 // indirect
github.com/quic-go/qpack v0.5.1 // indirect github.com/quic-go/qpack v0.5.1 // indirect
github.com/regfish/regfish-dnsapi-go v0.1.1 // indirect
github.com/rogpeppe/go-internal v1.14.1 // indirect github.com/rogpeppe/go-internal v1.14.1 // indirect
github.com/sacloud/api-client-go v0.2.10 // indirect
github.com/sacloud/go-http v0.1.9 // indirect
github.com/sacloud/iaas-api-go v1.14.0 // indirect
github.com/sacloud/packages-go v0.0.11 // indirect
github.com/sagikazarmark/locafero v0.9.0 // indirect
github.com/samber/lo v1.49.1 // indirect github.com/samber/lo v1.49.1 // indirect
github.com/samber/slog-common v0.18.1 // indirect github.com/samber/slog-common v0.18.1 // indirect
github.com/scaleway/scaleway-sdk-go v1.0.0-beta.33 // indirect
github.com/selectel/domains-go v1.1.0 // indirect
github.com/selectel/go-selvpcclient/v3 v3.2.1 // indirect
github.com/shopspring/decimal v1.4.0 // indirect
github.com/sirupsen/logrus v1.9.4-0.20230606125235-dd1b4c2e81af // indirect github.com/sirupsen/logrus v1.9.4-0.20230606125235-dd1b4c2e81af // indirect
github.com/smartystreets/go-aws-auth v0.0.0-20180515143844-0c1422d1fdb9 // indirect
github.com/softlayer/softlayer-go v1.1.7 // indirect
github.com/softlayer/xmlrpc v0.0.0-20200409220501-5f089df7cb7e // indirect
github.com/sony/gobreaker v1.0.0 // indirect
github.com/sourcegraph/conc v0.3.0 // indirect
github.com/spf13/cast v1.7.1 // indirect
github.com/spf13/pflag v1.0.6 // indirect
github.com/spf13/viper v1.20.1 // indirect
github.com/subosito/gotenv v1.6.0 // indirect
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.1150 // indirect
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/dnspod v1.0.1136 // indirect
github.com/tjfoc/gmsm v1.4.1 // indirect
github.com/tklauser/go-sysconf v0.3.15 // indirect github.com/tklauser/go-sysconf v0.3.15 // indirect
github.com/tklauser/numcpus v0.10.0 // indirect github.com/tklauser/numcpus v0.10.0 // indirect
github.com/transip/gotransip/v6 v6.26.0 // indirect
github.com/twitchyliquid64/golang-asm v0.15.1 // indirect github.com/twitchyliquid64/golang-asm v0.15.1 // indirect
github.com/ultradns/ultradns-go-sdk v1.8.0-20241010134910-243eeec // indirect
github.com/vinyldns/go-vinyldns v0.9.16 // indirect
github.com/volcengine/volc-sdk-golang v1.0.205 // indirect
github.com/vultr/govultr/v3 v3.19.1 // indirect
github.com/x448/float16 v0.8.4 // indirect
github.com/youmark/pkcs8 v0.0.0-20240726163527-a2c0da244d78 // indirect
github.com/yusufpapurcu/wmi v1.2.4 // indirect github.com/yusufpapurcu/wmi v1.2.4 // indirect
go.mongodb.org/mongo-driver v1.17.3 // indirect
go.opentelemetry.io/auto/sdk v1.1.0 // indirect
go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.60.0 // indirect
go.opentelemetry.io/otel v1.35.0 // indirect go.opentelemetry.io/otel v1.35.0 // indirect
go.opentelemetry.io/otel/sdk v1.35.0 // indirect go.opentelemetry.io/otel/metric v1.35.0 // indirect
go.opentelemetry.io/otel/trace v1.35.0 // indirect go.opentelemetry.io/otel/trace v1.35.0 // indirect
go.uber.org/automaxprocs v1.6.0 // indirect go.uber.org/automaxprocs v1.6.0 // indirect
go.uber.org/mock v0.5.1 // indirect go.uber.org/mock v0.5.1 // indirect
go.uber.org/multierr v1.11.0 // indirect
go.uber.org/ratelimit v0.3.1 // indirect
golang.org/x/arch v0.16.0 // indirect golang.org/x/arch v0.16.0 // indirect
golang.org/x/mod v0.24.0 // indirect golang.org/x/mod v0.24.0 // indirect
golang.org/x/sync v0.13.0 // indirect golang.org/x/sync v0.13.0 // indirect
golang.org/x/sys v0.32.0 // indirect golang.org/x/sys v0.32.0 // indirect
golang.org/x/tools v0.32.0 // indirect golang.org/x/tools v0.32.0 // indirect
google.golang.org/api v0.230.0 // indirect
google.golang.org/genproto/googleapis/api v0.0.0-20250422160041-2d3770c4ea7f // indirect
google.golang.org/genproto/googleapis/rpc v0.0.0-20250422160041-2d3770c4ea7f // indirect
google.golang.org/grpc v1.72.0 // indirect
google.golang.org/protobuf v1.36.6 // indirect google.golang.org/protobuf v1.36.6 // indirect
gopkg.in/inf.v0 v0.9.1 // indirect
gopkg.in/ini.v1 v1.67.0 // indirect gopkg.in/ini.v1 v1.67.0 // indirect
gopkg.in/ns1/ns1-go.v2 v2.14.2 // indirect
gopkg.in/yaml.v2 v2.4.0 // indirect
k8s.io/api v0.33.0 // indirect
k8s.io/apimachinery v0.33.0 // indirect
k8s.io/klog/v2 v2.130.1 // indirect
k8s.io/utils v0.0.0-20250321185631-1f6e0b77f77e // indirect
sigs.k8s.io/json v0.0.0-20241014173422-cfa47c3a1cc8 // indirect
sigs.k8s.io/randfill v1.0.0 // indirect
sigs.k8s.io/structured-merge-diff/v4 v4.7.0 // indirect
sigs.k8s.io/yaml v1.4.0 // indirect
) )

2267
go.sum

File diff suppressed because it is too large Load diff

View file

@ -64,11 +64,11 @@ func (cfg *AutocertConfig) Validate() gperr.Error {
} }
} }
// check if provider is implemented // check if provider is implemented
providerConstructor, ok := providersGenMap[cfg.Provider] providerConstructor, ok := providers[cfg.Provider]
if !ok { if !ok {
b.Add(ErrUnknownProvider. b.Add(ErrUnknownProvider.
Subject(cfg.Provider). Subject(cfg.Provider).
Withf(strutils.DoYouMean(utils.NearestField(cfg.Provider, providersGenMap)))) Withf(strutils.DoYouMean(utils.NearestField(cfg.Provider, providers))))
} else { } else {
_, err := providerConstructor(cfg.Options) _, err := providerConstructor(cfg.Options)
if err != nil { if err != nil {

View file

@ -1,36 +0,0 @@
package autocert
import (
"github.com/go-acme/lego/v4/providers/dns/clouddns"
"github.com/go-acme/lego/v4/providers/dns/cloudflare"
"github.com/go-acme/lego/v4/providers/dns/duckdns"
"github.com/go-acme/lego/v4/providers/dns/ovh"
"github.com/go-acme/lego/v4/providers/dns/porkbun"
)
const (
certBasePath = "certs/"
CertFileDefault = certBasePath + "cert.crt"
KeyFileDefault = certBasePath + "priv.key"
ACMEKeyFileDefault = certBasePath + "acme.key"
)
const (
ProviderLocal = "local"
ProviderCloudflare = "cloudflare"
ProviderClouddns = "clouddns"
ProviderDuckdns = "duckdns"
ProviderOVH = "ovh"
ProviderPseudo = "pseudo" // for testing
ProviderPorkbun = "porkbun"
)
var providersGenMap = map[string]ProviderGenerator{
ProviderLocal: providerGenerator(NewDummyDefaultConfig, NewDummyDNSProviderConfig),
ProviderCloudflare: providerGenerator(cloudflare.NewDefaultConfig, cloudflare.NewDNSProviderConfig),
ProviderClouddns: providerGenerator(clouddns.NewDefaultConfig, clouddns.NewDNSProviderConfig),
ProviderDuckdns: providerGenerator(duckdns.NewDefaultConfig, duckdns.NewDNSProviderConfig),
ProviderOVH: providerGenerator(ovh.NewDefaultConfig, ovh.NewDNSProviderConfig),
ProviderPseudo: providerGenerator(NewDummyDefaultConfig, NewDummyDNSProviderConfig),
ProviderPorkbun: providerGenerator(porkbun.NewDefaultConfig, porkbun.NewDNSProviderConfig),
}

53
internal/autocert/gen.py Normal file
View file

@ -0,0 +1,53 @@
import requests
import os
class Entry:
def __init__(self, name: str, type: str, **kwargs) -> None:
self.name = name
self.type = type
url = "https://api.github.com/repos/go-acme/lego/contents/providers/dns"
response = requests.get(url)
data: list[Entry] = [Entry(**i) for i in response.json()]
header = "//go:generate /usr/bin/python3 gen.py\n\npackage autocert\n\n"
names: list[str] = [
"ProviderLocal = \"local\"",
"ProviderPseudo = \"pseudo\"",
]
imports: list[str] = []
genMap: list[str] = [
"ProviderLocal: providerGenerator(NewDummyDefaultConfig, NewDummyDNSProviderConfig),",
"ProviderPseudo: providerGenerator(NewDummyDefaultConfig, NewDummyDNSProviderConfig),",
]
blacklists = [
"internal",
# deprecated
"azure",
"brandit",
"cloudxns",
"dnspod",
"mythicbeasts",
"yandexcloud"
]
for item in data:
if item.type != "dir" or item.name in blacklists:
continue
imports.append(f"import \"github.com/go-acme/lego/v4/providers/dns/{item.name}\"")
names.append(f"Provider{item.name} = \"{item.name}\"")
genMap.append(f"Provider{item.name}: providerGenerator({item.name}.NewDefaultConfig, {item.name}.NewDNSProviderConfig),")
with open("providers.go", "w") as f:
f.write(header)
f.write("\n".join(imports))
f.write("\n\n")
f.write("const (\n")
f.write("\n".join(names))
f.write("\n)\n\n")
f.write("var providers = map[string]ProviderGenerator{\n")
f.write("\n".join(genMap))
f.write("\n}\n\n")
os.execvp("go", ["go", "fmt", "providers.go"])

View file

@ -0,0 +1,8 @@
package autocert
const (
certBasePath = "certs/"
CertFileDefault = certBasePath + "cert.crt"
KeyFileDefault = certBasePath + "priv.key"
ACMEKeyFileDefault = certBasePath + "acme.key"
)

View file

@ -205,7 +205,7 @@ func (p *Provider) initClient() error {
return err return err
} }
generator := providersGenMap[p.cfg.Provider] generator := providers[p.cfg.Provider]
legoProvider, pErr := generator(p.cfg.Options) legoProvider, pErr := generator(p.cfg.Options)
if pErr != nil { if pErr != nil {
return pErr return pErr

View file

@ -0,0 +1,452 @@
//go:generate /usr/bin/python3 gen.py
package autocert
import "github.com/go-acme/lego/v4/providers/dns/acmedns"
import "github.com/go-acme/lego/v4/providers/dns/active24"
import "github.com/go-acme/lego/v4/providers/dns/alidns"
import "github.com/go-acme/lego/v4/providers/dns/allinkl"
import "github.com/go-acme/lego/v4/providers/dns/arvancloud"
import "github.com/go-acme/lego/v4/providers/dns/auroradns"
import "github.com/go-acme/lego/v4/providers/dns/autodns"
import "github.com/go-acme/lego/v4/providers/dns/axelname"
import "github.com/go-acme/lego/v4/providers/dns/azuredns"
import "github.com/go-acme/lego/v4/providers/dns/baiducloud"
import "github.com/go-acme/lego/v4/providers/dns/bindman"
import "github.com/go-acme/lego/v4/providers/dns/bluecat"
import "github.com/go-acme/lego/v4/providers/dns/bookmyname"
import "github.com/go-acme/lego/v4/providers/dns/bunny"
import "github.com/go-acme/lego/v4/providers/dns/checkdomain"
import "github.com/go-acme/lego/v4/providers/dns/civo"
import "github.com/go-acme/lego/v4/providers/dns/clouddns"
import "github.com/go-acme/lego/v4/providers/dns/cloudflare"
import "github.com/go-acme/lego/v4/providers/dns/cloudns"
import "github.com/go-acme/lego/v4/providers/dns/cloudru"
import "github.com/go-acme/lego/v4/providers/dns/conoha"
import "github.com/go-acme/lego/v4/providers/dns/constellix"
import "github.com/go-acme/lego/v4/providers/dns/corenetworks"
import "github.com/go-acme/lego/v4/providers/dns/cpanel"
import "github.com/go-acme/lego/v4/providers/dns/derak"
import "github.com/go-acme/lego/v4/providers/dns/desec"
import "github.com/go-acme/lego/v4/providers/dns/designate"
import "github.com/go-acme/lego/v4/providers/dns/digitalocean"
import "github.com/go-acme/lego/v4/providers/dns/directadmin"
import "github.com/go-acme/lego/v4/providers/dns/dnshomede"
import "github.com/go-acme/lego/v4/providers/dns/dnsimple"
import "github.com/go-acme/lego/v4/providers/dns/dnsmadeeasy"
import "github.com/go-acme/lego/v4/providers/dns/dode"
import "github.com/go-acme/lego/v4/providers/dns/domeneshop"
import "github.com/go-acme/lego/v4/providers/dns/dreamhost"
import "github.com/go-acme/lego/v4/providers/dns/duckdns"
import "github.com/go-acme/lego/v4/providers/dns/dyn"
import "github.com/go-acme/lego/v4/providers/dns/dynu"
import "github.com/go-acme/lego/v4/providers/dns/easydns"
import "github.com/go-acme/lego/v4/providers/dns/edgedns"
import "github.com/go-acme/lego/v4/providers/dns/efficientip"
import "github.com/go-acme/lego/v4/providers/dns/epik"
import "github.com/go-acme/lego/v4/providers/dns/exec"
import "github.com/go-acme/lego/v4/providers/dns/exoscale"
import "github.com/go-acme/lego/v4/providers/dns/f5xc"
import "github.com/go-acme/lego/v4/providers/dns/freemyip"
import "github.com/go-acme/lego/v4/providers/dns/gandi"
import "github.com/go-acme/lego/v4/providers/dns/gandiv5"
import "github.com/go-acme/lego/v4/providers/dns/gcloud"
import "github.com/go-acme/lego/v4/providers/dns/gcore"
import "github.com/go-acme/lego/v4/providers/dns/glesys"
import "github.com/go-acme/lego/v4/providers/dns/godaddy"
import "github.com/go-acme/lego/v4/providers/dns/googledomains"
import "github.com/go-acme/lego/v4/providers/dns/hetzner"
import "github.com/go-acme/lego/v4/providers/dns/hostingde"
import "github.com/go-acme/lego/v4/providers/dns/hosttech"
import "github.com/go-acme/lego/v4/providers/dns/httpnet"
import "github.com/go-acme/lego/v4/providers/dns/httpreq"
import "github.com/go-acme/lego/v4/providers/dns/huaweicloud"
import "github.com/go-acme/lego/v4/providers/dns/hurricane"
import "github.com/go-acme/lego/v4/providers/dns/hyperone"
import "github.com/go-acme/lego/v4/providers/dns/ibmcloud"
import "github.com/go-acme/lego/v4/providers/dns/iij"
import "github.com/go-acme/lego/v4/providers/dns/iijdpf"
import "github.com/go-acme/lego/v4/providers/dns/infoblox"
import "github.com/go-acme/lego/v4/providers/dns/infomaniak"
import "github.com/go-acme/lego/v4/providers/dns/internetbs"
import "github.com/go-acme/lego/v4/providers/dns/inwx"
import "github.com/go-acme/lego/v4/providers/dns/ionos"
import "github.com/go-acme/lego/v4/providers/dns/ipv64"
import "github.com/go-acme/lego/v4/providers/dns/iwantmyname"
import "github.com/go-acme/lego/v4/providers/dns/joker"
import "github.com/go-acme/lego/v4/providers/dns/liara"
import "github.com/go-acme/lego/v4/providers/dns/lightsail"
import "github.com/go-acme/lego/v4/providers/dns/limacity"
import "github.com/go-acme/lego/v4/providers/dns/linode"
import "github.com/go-acme/lego/v4/providers/dns/liquidweb"
import "github.com/go-acme/lego/v4/providers/dns/loopia"
import "github.com/go-acme/lego/v4/providers/dns/luadns"
import "github.com/go-acme/lego/v4/providers/dns/mailinabox"
import "github.com/go-acme/lego/v4/providers/dns/manageengine"
import "github.com/go-acme/lego/v4/providers/dns/metaname"
import "github.com/go-acme/lego/v4/providers/dns/metaregistrar"
import "github.com/go-acme/lego/v4/providers/dns/mijnhost"
import "github.com/go-acme/lego/v4/providers/dns/mittwald"
import "github.com/go-acme/lego/v4/providers/dns/myaddr"
import "github.com/go-acme/lego/v4/providers/dns/mydnsjp"
import "github.com/go-acme/lego/v4/providers/dns/namecheap"
import "github.com/go-acme/lego/v4/providers/dns/namedotcom"
import "github.com/go-acme/lego/v4/providers/dns/namesilo"
import "github.com/go-acme/lego/v4/providers/dns/nearlyfreespeech"
import "github.com/go-acme/lego/v4/providers/dns/netcup"
import "github.com/go-acme/lego/v4/providers/dns/netlify"
import "github.com/go-acme/lego/v4/providers/dns/nicmanager"
import "github.com/go-acme/lego/v4/providers/dns/nifcloud"
import "github.com/go-acme/lego/v4/providers/dns/njalla"
import "github.com/go-acme/lego/v4/providers/dns/nodion"
import "github.com/go-acme/lego/v4/providers/dns/ns1"
import "github.com/go-acme/lego/v4/providers/dns/oraclecloud"
import "github.com/go-acme/lego/v4/providers/dns/otc"
import "github.com/go-acme/lego/v4/providers/dns/ovh"
import "github.com/go-acme/lego/v4/providers/dns/pdns"
import "github.com/go-acme/lego/v4/providers/dns/plesk"
import "github.com/go-acme/lego/v4/providers/dns/porkbun"
import "github.com/go-acme/lego/v4/providers/dns/rackspace"
import "github.com/go-acme/lego/v4/providers/dns/rainyun"
import "github.com/go-acme/lego/v4/providers/dns/rcodezero"
import "github.com/go-acme/lego/v4/providers/dns/regfish"
import "github.com/go-acme/lego/v4/providers/dns/regru"
import "github.com/go-acme/lego/v4/providers/dns/rfc2136"
import "github.com/go-acme/lego/v4/providers/dns/rimuhosting"
import "github.com/go-acme/lego/v4/providers/dns/route53"
import "github.com/go-acme/lego/v4/providers/dns/safedns"
import "github.com/go-acme/lego/v4/providers/dns/sakuracloud"
import "github.com/go-acme/lego/v4/providers/dns/scaleway"
import "github.com/go-acme/lego/v4/providers/dns/selectel"
import "github.com/go-acme/lego/v4/providers/dns/selectelv2"
import "github.com/go-acme/lego/v4/providers/dns/selfhostde"
import "github.com/go-acme/lego/v4/providers/dns/servercow"
import "github.com/go-acme/lego/v4/providers/dns/shellrent"
import "github.com/go-acme/lego/v4/providers/dns/simply"
import "github.com/go-acme/lego/v4/providers/dns/sonic"
import "github.com/go-acme/lego/v4/providers/dns/spaceship"
import "github.com/go-acme/lego/v4/providers/dns/stackpath"
import "github.com/go-acme/lego/v4/providers/dns/technitium"
import "github.com/go-acme/lego/v4/providers/dns/tencentcloud"
import "github.com/go-acme/lego/v4/providers/dns/timewebcloud"
import "github.com/go-acme/lego/v4/providers/dns/transip"
import "github.com/go-acme/lego/v4/providers/dns/ultradns"
import "github.com/go-acme/lego/v4/providers/dns/variomedia"
import "github.com/go-acme/lego/v4/providers/dns/vegadns"
import "github.com/go-acme/lego/v4/providers/dns/vercel"
import "github.com/go-acme/lego/v4/providers/dns/versio"
import "github.com/go-acme/lego/v4/providers/dns/vinyldns"
import "github.com/go-acme/lego/v4/providers/dns/vkcloud"
import "github.com/go-acme/lego/v4/providers/dns/volcengine"
import "github.com/go-acme/lego/v4/providers/dns/vscale"
import "github.com/go-acme/lego/v4/providers/dns/vultr"
import "github.com/go-acme/lego/v4/providers/dns/webnames"
import "github.com/go-acme/lego/v4/providers/dns/websupport"
import "github.com/go-acme/lego/v4/providers/dns/wedos"
import "github.com/go-acme/lego/v4/providers/dns/westcn"
import "github.com/go-acme/lego/v4/providers/dns/yandex"
import "github.com/go-acme/lego/v4/providers/dns/yandex360"
import "github.com/go-acme/lego/v4/providers/dns/zoneee"
import "github.com/go-acme/lego/v4/providers/dns/zonomi"
const (
ProviderLocal = "local"
ProviderPseudo = "pseudo"
Provideracmedns = "acmedns"
Provideractive24 = "active24"
Provideralidns = "alidns"
Providerallinkl = "allinkl"
Providerarvancloud = "arvancloud"
Providerauroradns = "auroradns"
Providerautodns = "autodns"
Provideraxelname = "axelname"
Providerazuredns = "azuredns"
Providerbaiducloud = "baiducloud"
Providerbindman = "bindman"
Providerbluecat = "bluecat"
Providerbookmyname = "bookmyname"
Providerbunny = "bunny"
Providercheckdomain = "checkdomain"
Providercivo = "civo"
Providerclouddns = "clouddns"
Providercloudflare = "cloudflare"
Providercloudns = "cloudns"
Providercloudru = "cloudru"
Providerconoha = "conoha"
Providerconstellix = "constellix"
Providercorenetworks = "corenetworks"
Providercpanel = "cpanel"
Providerderak = "derak"
Providerdesec = "desec"
Providerdesignate = "designate"
Providerdigitalocean = "digitalocean"
Providerdirectadmin = "directadmin"
Providerdnshomede = "dnshomede"
Providerdnsimple = "dnsimple"
Providerdnsmadeeasy = "dnsmadeeasy"
Providerdode = "dode"
Providerdomeneshop = "domeneshop"
Providerdreamhost = "dreamhost"
Providerduckdns = "duckdns"
Providerdyn = "dyn"
Providerdynu = "dynu"
Providereasydns = "easydns"
Provideredgedns = "edgedns"
Providerefficientip = "efficientip"
Providerepik = "epik"
Providerexec = "exec"
Providerexoscale = "exoscale"
Providerf5xc = "f5xc"
Providerfreemyip = "freemyip"
Providergandi = "gandi"
Providergandiv5 = "gandiv5"
Providergcloud = "gcloud"
Providergcore = "gcore"
Providerglesys = "glesys"
Providergodaddy = "godaddy"
Providergoogledomains = "googledomains"
Providerhetzner = "hetzner"
Providerhostingde = "hostingde"
Providerhosttech = "hosttech"
Providerhttpnet = "httpnet"
Providerhttpreq = "httpreq"
Providerhuaweicloud = "huaweicloud"
Providerhurricane = "hurricane"
Providerhyperone = "hyperone"
Provideribmcloud = "ibmcloud"
Provideriij = "iij"
Provideriijdpf = "iijdpf"
Providerinfoblox = "infoblox"
Providerinfomaniak = "infomaniak"
Providerinternetbs = "internetbs"
Providerinwx = "inwx"
Providerionos = "ionos"
Provideripv64 = "ipv64"
Provideriwantmyname = "iwantmyname"
Providerjoker = "joker"
Providerliara = "liara"
Providerlightsail = "lightsail"
Providerlimacity = "limacity"
Providerlinode = "linode"
Providerliquidweb = "liquidweb"
Providerloopia = "loopia"
Providerluadns = "luadns"
Providermailinabox = "mailinabox"
Providermanageengine = "manageengine"
Providermetaname = "metaname"
Providermetaregistrar = "metaregistrar"
Providermijnhost = "mijnhost"
Providermittwald = "mittwald"
Providermyaddr = "myaddr"
Providermydnsjp = "mydnsjp"
Providernamecheap = "namecheap"
Providernamedotcom = "namedotcom"
Providernamesilo = "namesilo"
Providernearlyfreespeech = "nearlyfreespeech"
Providernetcup = "netcup"
Providernetlify = "netlify"
Providernicmanager = "nicmanager"
Providernifcloud = "nifcloud"
Providernjalla = "njalla"
Providernodion = "nodion"
Providerns1 = "ns1"
Provideroraclecloud = "oraclecloud"
Providerotc = "otc"
Providerovh = "ovh"
Providerpdns = "pdns"
Providerplesk = "plesk"
Providerporkbun = "porkbun"
Providerrackspace = "rackspace"
Providerrainyun = "rainyun"
Providerrcodezero = "rcodezero"
Providerregfish = "regfish"
Providerregru = "regru"
Providerrfc2136 = "rfc2136"
Providerrimuhosting = "rimuhosting"
Providerroute53 = "route53"
Providersafedns = "safedns"
Providersakuracloud = "sakuracloud"
Providerscaleway = "scaleway"
Providerselectel = "selectel"
Providerselectelv2 = "selectelv2"
Providerselfhostde = "selfhostde"
Providerservercow = "servercow"
Providershellrent = "shellrent"
Providersimply = "simply"
Providersonic = "sonic"
Providerspaceship = "spaceship"
Providerstackpath = "stackpath"
Providertechnitium = "technitium"
Providertencentcloud = "tencentcloud"
Providertimewebcloud = "timewebcloud"
Providertransip = "transip"
Providerultradns = "ultradns"
Providervariomedia = "variomedia"
Providervegadns = "vegadns"
Providervercel = "vercel"
Providerversio = "versio"
Providervinyldns = "vinyldns"
Providervkcloud = "vkcloud"
Providervolcengine = "volcengine"
Providervscale = "vscale"
Providervultr = "vultr"
Providerwebnames = "webnames"
Providerwebsupport = "websupport"
Providerwedos = "wedos"
Providerwestcn = "westcn"
Provideryandex = "yandex"
Provideryandex360 = "yandex360"
Providerzoneee = "zoneee"
Providerzonomi = "zonomi"
)
var providers = map[string]ProviderGenerator{
ProviderLocal: providerGenerator(NewDummyDefaultConfig, NewDummyDNSProviderConfig),
ProviderPseudo: providerGenerator(NewDummyDefaultConfig, NewDummyDNSProviderConfig),
Provideracmedns: providerGenerator(acmedns.NewDefaultConfig, acmedns.NewDNSProviderConfig),
Provideractive24: providerGenerator(active24.NewDefaultConfig, active24.NewDNSProviderConfig),
Provideralidns: providerGenerator(alidns.NewDefaultConfig, alidns.NewDNSProviderConfig),
Providerallinkl: providerGenerator(allinkl.NewDefaultConfig, allinkl.NewDNSProviderConfig),
Providerarvancloud: providerGenerator(arvancloud.NewDefaultConfig, arvancloud.NewDNSProviderConfig),
Providerauroradns: providerGenerator(auroradns.NewDefaultConfig, auroradns.NewDNSProviderConfig),
Providerautodns: providerGenerator(autodns.NewDefaultConfig, autodns.NewDNSProviderConfig),
Provideraxelname: providerGenerator(axelname.NewDefaultConfig, axelname.NewDNSProviderConfig),
Providerazuredns: providerGenerator(azuredns.NewDefaultConfig, azuredns.NewDNSProviderConfig),
Providerbaiducloud: providerGenerator(baiducloud.NewDefaultConfig, baiducloud.NewDNSProviderConfig),
Providerbindman: providerGenerator(bindman.NewDefaultConfig, bindman.NewDNSProviderConfig),
Providerbluecat: providerGenerator(bluecat.NewDefaultConfig, bluecat.NewDNSProviderConfig),
Providerbookmyname: providerGenerator(bookmyname.NewDefaultConfig, bookmyname.NewDNSProviderConfig),
Providerbunny: providerGenerator(bunny.NewDefaultConfig, bunny.NewDNSProviderConfig),
Providercheckdomain: providerGenerator(checkdomain.NewDefaultConfig, checkdomain.NewDNSProviderConfig),
Providercivo: providerGenerator(civo.NewDefaultConfig, civo.NewDNSProviderConfig),
Providerclouddns: providerGenerator(clouddns.NewDefaultConfig, clouddns.NewDNSProviderConfig),
Providercloudflare: providerGenerator(cloudflare.NewDefaultConfig, cloudflare.NewDNSProviderConfig),
Providercloudns: providerGenerator(cloudns.NewDefaultConfig, cloudns.NewDNSProviderConfig),
Providercloudru: providerGenerator(cloudru.NewDefaultConfig, cloudru.NewDNSProviderConfig),
Providerconoha: providerGenerator(conoha.NewDefaultConfig, conoha.NewDNSProviderConfig),
Providerconstellix: providerGenerator(constellix.NewDefaultConfig, constellix.NewDNSProviderConfig),
Providercorenetworks: providerGenerator(corenetworks.NewDefaultConfig, corenetworks.NewDNSProviderConfig),
Providercpanel: providerGenerator(cpanel.NewDefaultConfig, cpanel.NewDNSProviderConfig),
Providerderak: providerGenerator(derak.NewDefaultConfig, derak.NewDNSProviderConfig),
Providerdesec: providerGenerator(desec.NewDefaultConfig, desec.NewDNSProviderConfig),
Providerdesignate: providerGenerator(designate.NewDefaultConfig, designate.NewDNSProviderConfig),
Providerdigitalocean: providerGenerator(digitalocean.NewDefaultConfig, digitalocean.NewDNSProviderConfig),
Providerdirectadmin: providerGenerator(directadmin.NewDefaultConfig, directadmin.NewDNSProviderConfig),
Providerdnshomede: providerGenerator(dnshomede.NewDefaultConfig, dnshomede.NewDNSProviderConfig),
Providerdnsimple: providerGenerator(dnsimple.NewDefaultConfig, dnsimple.NewDNSProviderConfig),
Providerdnsmadeeasy: providerGenerator(dnsmadeeasy.NewDefaultConfig, dnsmadeeasy.NewDNSProviderConfig),
Providerdode: providerGenerator(dode.NewDefaultConfig, dode.NewDNSProviderConfig),
Providerdomeneshop: providerGenerator(domeneshop.NewDefaultConfig, domeneshop.NewDNSProviderConfig),
Providerdreamhost: providerGenerator(dreamhost.NewDefaultConfig, dreamhost.NewDNSProviderConfig),
Providerduckdns: providerGenerator(duckdns.NewDefaultConfig, duckdns.NewDNSProviderConfig),
Providerdyn: providerGenerator(dyn.NewDefaultConfig, dyn.NewDNSProviderConfig),
Providerdynu: providerGenerator(dynu.NewDefaultConfig, dynu.NewDNSProviderConfig),
Providereasydns: providerGenerator(easydns.NewDefaultConfig, easydns.NewDNSProviderConfig),
Provideredgedns: providerGenerator(edgedns.NewDefaultConfig, edgedns.NewDNSProviderConfig),
Providerefficientip: providerGenerator(efficientip.NewDefaultConfig, efficientip.NewDNSProviderConfig),
Providerepik: providerGenerator(epik.NewDefaultConfig, epik.NewDNSProviderConfig),
Providerexec: providerGenerator(exec.NewDefaultConfig, exec.NewDNSProviderConfig),
Providerexoscale: providerGenerator(exoscale.NewDefaultConfig, exoscale.NewDNSProviderConfig),
Providerf5xc: providerGenerator(f5xc.NewDefaultConfig, f5xc.NewDNSProviderConfig),
Providerfreemyip: providerGenerator(freemyip.NewDefaultConfig, freemyip.NewDNSProviderConfig),
Providergandi: providerGenerator(gandi.NewDefaultConfig, gandi.NewDNSProviderConfig),
Providergandiv5: providerGenerator(gandiv5.NewDefaultConfig, gandiv5.NewDNSProviderConfig),
Providergcloud: providerGenerator(gcloud.NewDefaultConfig, gcloud.NewDNSProviderConfig),
Providergcore: providerGenerator(gcore.NewDefaultConfig, gcore.NewDNSProviderConfig),
Providerglesys: providerGenerator(glesys.NewDefaultConfig, glesys.NewDNSProviderConfig),
Providergodaddy: providerGenerator(godaddy.NewDefaultConfig, godaddy.NewDNSProviderConfig),
Providergoogledomains: providerGenerator(googledomains.NewDefaultConfig, googledomains.NewDNSProviderConfig),
Providerhetzner: providerGenerator(hetzner.NewDefaultConfig, hetzner.NewDNSProviderConfig),
Providerhostingde: providerGenerator(hostingde.NewDefaultConfig, hostingde.NewDNSProviderConfig),
Providerhosttech: providerGenerator(hosttech.NewDefaultConfig, hosttech.NewDNSProviderConfig),
Providerhttpnet: providerGenerator(httpnet.NewDefaultConfig, httpnet.NewDNSProviderConfig),
Providerhttpreq: providerGenerator(httpreq.NewDefaultConfig, httpreq.NewDNSProviderConfig),
Providerhuaweicloud: providerGenerator(huaweicloud.NewDefaultConfig, huaweicloud.NewDNSProviderConfig),
Providerhurricane: providerGenerator(hurricane.NewDefaultConfig, hurricane.NewDNSProviderConfig),
Providerhyperone: providerGenerator(hyperone.NewDefaultConfig, hyperone.NewDNSProviderConfig),
Provideribmcloud: providerGenerator(ibmcloud.NewDefaultConfig, ibmcloud.NewDNSProviderConfig),
Provideriij: providerGenerator(iij.NewDefaultConfig, iij.NewDNSProviderConfig),
Provideriijdpf: providerGenerator(iijdpf.NewDefaultConfig, iijdpf.NewDNSProviderConfig),
Providerinfoblox: providerGenerator(infoblox.NewDefaultConfig, infoblox.NewDNSProviderConfig),
Providerinfomaniak: providerGenerator(infomaniak.NewDefaultConfig, infomaniak.NewDNSProviderConfig),
Providerinternetbs: providerGenerator(internetbs.NewDefaultConfig, internetbs.NewDNSProviderConfig),
Providerinwx: providerGenerator(inwx.NewDefaultConfig, inwx.NewDNSProviderConfig),
Providerionos: providerGenerator(ionos.NewDefaultConfig, ionos.NewDNSProviderConfig),
Provideripv64: providerGenerator(ipv64.NewDefaultConfig, ipv64.NewDNSProviderConfig),
Provideriwantmyname: providerGenerator(iwantmyname.NewDefaultConfig, iwantmyname.NewDNSProviderConfig),
Providerjoker: providerGenerator(joker.NewDefaultConfig, joker.NewDNSProviderConfig),
Providerliara: providerGenerator(liara.NewDefaultConfig, liara.NewDNSProviderConfig),
Providerlightsail: providerGenerator(lightsail.NewDefaultConfig, lightsail.NewDNSProviderConfig),
Providerlimacity: providerGenerator(limacity.NewDefaultConfig, limacity.NewDNSProviderConfig),
Providerlinode: providerGenerator(linode.NewDefaultConfig, linode.NewDNSProviderConfig),
Providerliquidweb: providerGenerator(liquidweb.NewDefaultConfig, liquidweb.NewDNSProviderConfig),
Providerloopia: providerGenerator(loopia.NewDefaultConfig, loopia.NewDNSProviderConfig),
Providerluadns: providerGenerator(luadns.NewDefaultConfig, luadns.NewDNSProviderConfig),
Providermailinabox: providerGenerator(mailinabox.NewDefaultConfig, mailinabox.NewDNSProviderConfig),
Providermanageengine: providerGenerator(manageengine.NewDefaultConfig, manageengine.NewDNSProviderConfig),
Providermetaname: providerGenerator(metaname.NewDefaultConfig, metaname.NewDNSProviderConfig),
Providermetaregistrar: providerGenerator(metaregistrar.NewDefaultConfig, metaregistrar.NewDNSProviderConfig),
Providermijnhost: providerGenerator(mijnhost.NewDefaultConfig, mijnhost.NewDNSProviderConfig),
Providermittwald: providerGenerator(mittwald.NewDefaultConfig, mittwald.NewDNSProviderConfig),
Providermyaddr: providerGenerator(myaddr.NewDefaultConfig, myaddr.NewDNSProviderConfig),
Providermydnsjp: providerGenerator(mydnsjp.NewDefaultConfig, mydnsjp.NewDNSProviderConfig),
Providernamecheap: providerGenerator(namecheap.NewDefaultConfig, namecheap.NewDNSProviderConfig),
Providernamedotcom: providerGenerator(namedotcom.NewDefaultConfig, namedotcom.NewDNSProviderConfig),
Providernamesilo: providerGenerator(namesilo.NewDefaultConfig, namesilo.NewDNSProviderConfig),
Providernearlyfreespeech: providerGenerator(nearlyfreespeech.NewDefaultConfig, nearlyfreespeech.NewDNSProviderConfig),
Providernetcup: providerGenerator(netcup.NewDefaultConfig, netcup.NewDNSProviderConfig),
Providernetlify: providerGenerator(netlify.NewDefaultConfig, netlify.NewDNSProviderConfig),
Providernicmanager: providerGenerator(nicmanager.NewDefaultConfig, nicmanager.NewDNSProviderConfig),
Providernifcloud: providerGenerator(nifcloud.NewDefaultConfig, nifcloud.NewDNSProviderConfig),
Providernjalla: providerGenerator(njalla.NewDefaultConfig, njalla.NewDNSProviderConfig),
Providernodion: providerGenerator(nodion.NewDefaultConfig, nodion.NewDNSProviderConfig),
Providerns1: providerGenerator(ns1.NewDefaultConfig, ns1.NewDNSProviderConfig),
Provideroraclecloud: providerGenerator(oraclecloud.NewDefaultConfig, oraclecloud.NewDNSProviderConfig),
Providerotc: providerGenerator(otc.NewDefaultConfig, otc.NewDNSProviderConfig),
Providerovh: providerGenerator(ovh.NewDefaultConfig, ovh.NewDNSProviderConfig),
Providerpdns: providerGenerator(pdns.NewDefaultConfig, pdns.NewDNSProviderConfig),
Providerplesk: providerGenerator(plesk.NewDefaultConfig, plesk.NewDNSProviderConfig),
Providerporkbun: providerGenerator(porkbun.NewDefaultConfig, porkbun.NewDNSProviderConfig),
Providerrackspace: providerGenerator(rackspace.NewDefaultConfig, rackspace.NewDNSProviderConfig),
Providerrainyun: providerGenerator(rainyun.NewDefaultConfig, rainyun.NewDNSProviderConfig),
Providerrcodezero: providerGenerator(rcodezero.NewDefaultConfig, rcodezero.NewDNSProviderConfig),
Providerregfish: providerGenerator(regfish.NewDefaultConfig, regfish.NewDNSProviderConfig),
Providerregru: providerGenerator(regru.NewDefaultConfig, regru.NewDNSProviderConfig),
Providerrfc2136: providerGenerator(rfc2136.NewDefaultConfig, rfc2136.NewDNSProviderConfig),
Providerrimuhosting: providerGenerator(rimuhosting.NewDefaultConfig, rimuhosting.NewDNSProviderConfig),
Providerroute53: providerGenerator(route53.NewDefaultConfig, route53.NewDNSProviderConfig),
Providersafedns: providerGenerator(safedns.NewDefaultConfig, safedns.NewDNSProviderConfig),
Providersakuracloud: providerGenerator(sakuracloud.NewDefaultConfig, sakuracloud.NewDNSProviderConfig),
Providerscaleway: providerGenerator(scaleway.NewDefaultConfig, scaleway.NewDNSProviderConfig),
Providerselectel: providerGenerator(selectel.NewDefaultConfig, selectel.NewDNSProviderConfig),
Providerselectelv2: providerGenerator(selectelv2.NewDefaultConfig, selectelv2.NewDNSProviderConfig),
Providerselfhostde: providerGenerator(selfhostde.NewDefaultConfig, selfhostde.NewDNSProviderConfig),
Providerservercow: providerGenerator(servercow.NewDefaultConfig, servercow.NewDNSProviderConfig),
Providershellrent: providerGenerator(shellrent.NewDefaultConfig, shellrent.NewDNSProviderConfig),
Providersimply: providerGenerator(simply.NewDefaultConfig, simply.NewDNSProviderConfig),
Providersonic: providerGenerator(sonic.NewDefaultConfig, sonic.NewDNSProviderConfig),
Providerspaceship: providerGenerator(spaceship.NewDefaultConfig, spaceship.NewDNSProviderConfig),
Providerstackpath: providerGenerator(stackpath.NewDefaultConfig, stackpath.NewDNSProviderConfig),
Providertechnitium: providerGenerator(technitium.NewDefaultConfig, technitium.NewDNSProviderConfig),
Providertencentcloud: providerGenerator(tencentcloud.NewDefaultConfig, tencentcloud.NewDNSProviderConfig),
Providertimewebcloud: providerGenerator(timewebcloud.NewDefaultConfig, timewebcloud.NewDNSProviderConfig),
Providertransip: providerGenerator(transip.NewDefaultConfig, transip.NewDNSProviderConfig),
Providerultradns: providerGenerator(ultradns.NewDefaultConfig, ultradns.NewDNSProviderConfig),
Providervariomedia: providerGenerator(variomedia.NewDefaultConfig, variomedia.NewDNSProviderConfig),
Providervegadns: providerGenerator(vegadns.NewDefaultConfig, vegadns.NewDNSProviderConfig),
Providervercel: providerGenerator(vercel.NewDefaultConfig, vercel.NewDNSProviderConfig),
Providerversio: providerGenerator(versio.NewDefaultConfig, versio.NewDNSProviderConfig),
Providervinyldns: providerGenerator(vinyldns.NewDefaultConfig, vinyldns.NewDNSProviderConfig),
Providervkcloud: providerGenerator(vkcloud.NewDefaultConfig, vkcloud.NewDNSProviderConfig),
Providervolcengine: providerGenerator(volcengine.NewDefaultConfig, volcengine.NewDNSProviderConfig),
Providervscale: providerGenerator(vscale.NewDefaultConfig, vscale.NewDNSProviderConfig),
Providervultr: providerGenerator(vultr.NewDefaultConfig, vultr.NewDNSProviderConfig),
Providerwebnames: providerGenerator(webnames.NewDefaultConfig, webnames.NewDNSProviderConfig),
Providerwebsupport: providerGenerator(websupport.NewDefaultConfig, websupport.NewDNSProviderConfig),
Providerwedos: providerGenerator(wedos.NewDefaultConfig, wedos.NewDNSProviderConfig),
Providerwestcn: providerGenerator(westcn.NewDefaultConfig, westcn.NewDNSProviderConfig),
Provideryandex: providerGenerator(yandex.NewDefaultConfig, yandex.NewDNSProviderConfig),
Provideryandex360: providerGenerator(yandex360.NewDefaultConfig, yandex360.NewDNSProviderConfig),
Providerzoneee: providerGenerator(zoneee.NewDefaultConfig, zoneee.NewDNSProviderConfig),
Providerzonomi: providerGenerator(zonomi.NewDefaultConfig, zonomi.NewDNSProviderConfig),
}