mirror of
https://github.com/tobychui/zoraxy.git
synced 2025-05-31 04:37:20 +02:00
- Added user defined polling and propagation timeout option in ACME - Updated lego and added a few new DNS challenge providers - Updated code gen to support new parameters
This commit is contained in:
parent
9a371f5bcb
commit
5f64b622b5
188
src/go.mod
188
src/go.mod
@ -1,29 +1,36 @@
|
||||
module imuslab.com/zoraxy
|
||||
|
||||
go 1.21
|
||||
go 1.22.0
|
||||
|
||||
toolchain go1.22.2
|
||||
|
||||
require (
|
||||
github.com/boltdb/bolt v1.3.1
|
||||
github.com/docker/docker v27.0.0+incompatible
|
||||
github.com/go-acme/lego/v4 v4.16.1
|
||||
github.com/go-oauth2/oauth2 v3.9.2+incompatible
|
||||
github.com/go-acme/lego/v4 v4.19.2
|
||||
github.com/go-ping/ping v1.1.0
|
||||
github.com/go-session/session v3.1.2+incompatible
|
||||
github.com/google/uuid v1.6.0
|
||||
github.com/gorilla/sessions v1.2.2
|
||||
github.com/gorilla/websocket v1.5.1
|
||||
github.com/grandcat/zeroconf v1.0.0
|
||||
github.com/likexian/whois v1.15.1
|
||||
github.com/microcosm-cc/bluemonday v1.0.26
|
||||
golang.org/x/net v0.25.0
|
||||
golang.org/x/sys v0.20.0
|
||||
golang.org/x/text v0.15.0
|
||||
golang.org/x/net v0.29.0
|
||||
golang.org/x/sys v0.25.0
|
||||
golang.org/x/text v0.18.0
|
||||
)
|
||||
|
||||
require (
|
||||
github.com/go-session/session v3.1.2+incompatible // indirect
|
||||
cloud.google.com/go/auth v0.9.3 // indirect
|
||||
cloud.google.com/go/auth/oauth2adapt v0.2.4 // indirect
|
||||
github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/resourcegraph/armresourcegraph v0.9.0 // indirect
|
||||
github.com/benbjohnson/clock v1.3.0 // indirect
|
||||
github.com/golang-jwt/jwt v3.2.2+incompatible // indirect
|
||||
github.com/golang-jwt/jwt/v5 v5.2.1 // indirect
|
||||
github.com/huaweicloud/huaweicloud-sdk-go-v3 v0.1.114 // indirect
|
||||
github.com/opentracing/opentracing-go v1.2.1-0.20220228012449-10b1cf09e00b // indirect
|
||||
github.com/shopspring/decimal v1.3.1 // indirect
|
||||
github.com/tidwall/btree v0.0.0-20191029221954-400434d76274 // indirect
|
||||
github.com/tidwall/buntdb v1.1.2 // indirect
|
||||
github.com/tidwall/gjson v1.12.1 // indirect
|
||||
@ -32,91 +39,89 @@ require (
|
||||
github.com/tidwall/pretty v1.2.0 // indirect
|
||||
github.com/tidwall/rtree v0.0.0-20180113144539-6cd427091e0e // indirect
|
||||
github.com/tidwall/tinyqueue v0.0.0-20180302190814-1e39f5511563 // indirect
|
||||
github.com/tjfoc/gmsm v1.4.1 // indirect
|
||||
github.com/vultr/govultr/v3 v3.9.1 // indirect
|
||||
go.mongodb.org/mongo-driver v1.12.0 // indirect
|
||||
)
|
||||
|
||||
require (
|
||||
cloud.google.com/go/compute v1.25.1 // indirect
|
||||
cloud.google.com/go/compute/metadata v0.2.3 // indirect
|
||||
cloud.google.com/go/compute/metadata v0.5.1 // indirect
|
||||
github.com/AdamSLevy/jsonrpc2/v14 v14.1.0 // indirect
|
||||
github.com/Azure/azure-sdk-for-go v68.0.0+incompatible // indirect
|
||||
github.com/Azure/azure-sdk-for-go/sdk/azcore v1.6.0 // indirect
|
||||
github.com/Azure/azure-sdk-for-go/sdk/azidentity v1.3.0 // indirect
|
||||
github.com/Azure/azure-sdk-for-go/sdk/internal v1.3.0 // indirect
|
||||
github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/dns/armdns v1.1.0 // indirect
|
||||
github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/privatedns/armprivatedns v1.1.0 // indirect
|
||||
github.com/Azure/azure-sdk-for-go/sdk/azcore v1.14.0 // indirect
|
||||
github.com/Azure/azure-sdk-for-go/sdk/azidentity v1.7.0 // indirect
|
||||
github.com/Azure/azure-sdk-for-go/sdk/internal v1.10.0 // 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.2.0 // indirect
|
||||
github.com/Azure/go-autorest v14.2.0+incompatible // indirect
|
||||
github.com/Azure/go-autorest/autorest v0.11.29 // indirect
|
||||
github.com/Azure/go-autorest/autorest/adal v0.9.22 // indirect
|
||||
github.com/Azure/go-autorest/autorest/azure/auth v0.5.12 // indirect
|
||||
github.com/Azure/go-autorest/autorest/azure/cli v0.4.5 // indirect
|
||||
github.com/Azure/go-autorest/autorest/azure/auth v0.5.13 // indirect
|
||||
github.com/Azure/go-autorest/autorest/azure/cli v0.4.6 // indirect
|
||||
github.com/Azure/go-autorest/autorest/date v0.3.0 // indirect
|
||||
github.com/Azure/go-autorest/autorest/to v0.4.0 // indirect
|
||||
github.com/Azure/go-autorest/logger v0.2.1 // indirect
|
||||
github.com/Azure/go-autorest/tracing v0.6.0 // indirect
|
||||
github.com/AzureAD/microsoft-authentication-library-for-go v1.0.0 // indirect
|
||||
github.com/AzureAD/microsoft-authentication-library-for-go v1.2.2 // indirect
|
||||
github.com/Microsoft/go-winio v0.4.14 // indirect
|
||||
github.com/OpenDNS/vegadns2client v0.0.0-20180418235048-a3fa4a771d87 // indirect
|
||||
github.com/aliyun/alibaba-cloud-sdk-go v1.61.1755 // indirect
|
||||
github.com/andres-erbsen/clock v0.0.0-20160526145045-9e14626cd129 // indirect
|
||||
github.com/aws/aws-sdk-go-v2 v1.24.1 // indirect
|
||||
github.com/aws/aws-sdk-go-v2/config v1.26.6 // indirect
|
||||
github.com/aws/aws-sdk-go-v2/credentials v1.16.16 // indirect
|
||||
github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.14.11 // indirect
|
||||
github.com/aws/aws-sdk-go-v2/internal/configsources v1.2.10 // indirect
|
||||
github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.5.10 // indirect
|
||||
github.com/aws/aws-sdk-go-v2/internal/ini v1.7.3 // indirect
|
||||
github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.10.4 // indirect
|
||||
github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.10.10 // indirect
|
||||
github.com/aws/aws-sdk-go-v2/service/lightsail v1.34.0 // indirect
|
||||
github.com/aws/aws-sdk-go-v2/service/route53 v1.37.0 // indirect
|
||||
github.com/aws/aws-sdk-go-v2/service/sso v1.18.7 // indirect
|
||||
github.com/aws/aws-sdk-go-v2/service/ssooidc v1.21.7 // indirect
|
||||
github.com/aws/aws-sdk-go-v2/service/sts v1.26.7 // indirect
|
||||
github.com/aws/smithy-go v1.19.0 // indirect
|
||||
github.com/aliyun/alibaba-cloud-sdk-go v1.63.15 // indirect
|
||||
github.com/aws/aws-sdk-go-v2 v1.30.5 // indirect
|
||||
github.com/aws/aws-sdk-go-v2/config v1.27.33 // indirect
|
||||
github.com/aws/aws-sdk-go-v2/credentials v1.17.32 // indirect
|
||||
github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.16.13 // indirect
|
||||
github.com/aws/aws-sdk-go-v2/internal/configsources v1.3.17 // indirect
|
||||
github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.6.17 // indirect
|
||||
github.com/aws/aws-sdk-go-v2/internal/ini v1.8.1 // indirect
|
||||
github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.11.4 // indirect
|
||||
github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.11.19 // indirect
|
||||
github.com/aws/aws-sdk-go-v2/service/lightsail v1.40.6 // indirect
|
||||
github.com/aws/aws-sdk-go-v2/service/route53 v1.43.2 // indirect
|
||||
github.com/aws/aws-sdk-go-v2/service/sso v1.22.7 // indirect
|
||||
github.com/aws/aws-sdk-go-v2/service/ssooidc v1.26.7 // indirect
|
||||
github.com/aws/aws-sdk-go-v2/service/sts v1.30.7 // indirect
|
||||
github.com/aws/smithy-go v1.20.4 // indirect
|
||||
github.com/aymerick/douceur v0.2.0 // indirect
|
||||
github.com/boombuler/barcode v1.0.1-0.20190219062509-6c824513bacc // indirect
|
||||
github.com/cenkalti/backoff v2.2.1+incompatible // indirect
|
||||
github.com/cenkalti/backoff/v4 v4.3.0 // indirect
|
||||
github.com/civo/civogo v0.3.11 // indirect
|
||||
github.com/cloudflare/cloudflare-go v0.86.0 // indirect
|
||||
github.com/cloudflare/cloudflare-go v0.104.0 // indirect
|
||||
github.com/containerd/log v0.1.0 // indirect
|
||||
github.com/davecgh/go-spew v1.1.1 // indirect
|
||||
github.com/deepmap/oapi-codegen v1.9.1 // indirect
|
||||
github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc // indirect
|
||||
github.com/dimchansky/utfbom v1.1.1 // indirect
|
||||
github.com/distribution/reference v0.6.0 // indirect
|
||||
github.com/dnsimple/dnsimple-go v1.2.0 // indirect
|
||||
github.com/dnsimple/dnsimple-go v1.7.0 // indirect
|
||||
github.com/docker/go-connections v0.5.0 // indirect
|
||||
github.com/docker/go-units v0.5.0 // indirect
|
||||
github.com/exoscale/egoscale v0.102.3 // indirect
|
||||
github.com/fatih/structs v1.1.0 // indirect
|
||||
github.com/felixge/httpsnoop v1.0.4 // indirect
|
||||
github.com/fsnotify/fsnotify v1.7.0 // indirect
|
||||
github.com/ghodss/yaml v1.0.0 // indirect
|
||||
github.com/go-errors/errors v1.0.1 // indirect
|
||||
github.com/go-jose/go-jose/v4 v4.0.1 // indirect
|
||||
github.com/go-logr/logr v1.4.1 // indirect
|
||||
github.com/go-jose/go-jose/v4 v4.0.4 // indirect
|
||||
github.com/go-logr/logr v1.4.2 // indirect
|
||||
github.com/go-logr/stdr v1.2.2 // indirect
|
||||
github.com/go-oauth2/oauth2/v4 v4.5.2
|
||||
github.com/go-resty/resty/v2 v2.11.0 // indirect
|
||||
github.com/go-viper/mapstructure/v2 v2.0.0-alpha.1 // indirect
|
||||
github.com/goccy/go-json v0.10.2 // indirect
|
||||
github.com/go-resty/resty/v2 v2.13.1 // indirect
|
||||
github.com/go-viper/mapstructure/v2 v2.1.0 // indirect
|
||||
github.com/goccy/go-json v0.10.3 // indirect
|
||||
github.com/gofrs/uuid v4.4.0+incompatible
|
||||
github.com/gogo/protobuf v1.3.2 // indirect
|
||||
github.com/golang-jwt/jwt/v4 v4.5.0 // indirect
|
||||
github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da // indirect
|
||||
github.com/golang/protobuf v1.5.4 // indirect
|
||||
github.com/google/go-querystring v1.1.0 // indirect
|
||||
github.com/google/s2a-go v0.1.7 // indirect
|
||||
github.com/googleapis/enterprise-certificate-proxy v0.3.2 // indirect
|
||||
github.com/googleapis/gax-go/v2 v2.12.2 // indirect
|
||||
github.com/gophercloud/gophercloud v1.0.0 // indirect
|
||||
github.com/google/s2a-go v0.1.8 // indirect
|
||||
github.com/googleapis/enterprise-certificate-proxy v0.3.4 // indirect
|
||||
github.com/googleapis/gax-go/v2 v2.13.0 // indirect
|
||||
github.com/gophercloud/gophercloud v1.14.0 // indirect
|
||||
github.com/gorilla/csrf v1.7.2
|
||||
github.com/gorilla/css v1.0.1 // indirect
|
||||
github.com/gorilla/securecookie v1.1.2 // indirect
|
||||
github.com/hashicorp/errwrap v1.0.0 // indirect
|
||||
github.com/hashicorp/go-cleanhttp v0.5.2 // indirect
|
||||
github.com/hashicorp/go-multierror v1.1.1 // indirect
|
||||
github.com/hashicorp/go-retryablehttp v0.7.5 // indirect
|
||||
github.com/hashicorp/go-retryablehttp v0.7.7 // indirect
|
||||
github.com/iij/doapi v0.0.0-20190504054126-0bbf12d6d7df // indirect
|
||||
github.com/infobloxopen/infoblox-go-client v1.1.1 // indirect
|
||||
github.com/jmespath/go-jmespath v0.4.0 // indirect
|
||||
@ -126,11 +131,11 @@ require (
|
||||
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/linode/linodego v1.28.0 // indirect
|
||||
github.com/linode/linodego v1.40.0 // indirect
|
||||
github.com/liquidweb/liquidweb-cli v0.6.9 // indirect
|
||||
github.com/liquidweb/liquidweb-go v1.6.4 // indirect
|
||||
github.com/mattn/go-isatty v0.0.20 // indirect
|
||||
github.com/miekg/dns v1.1.58 // indirect
|
||||
github.com/miekg/dns v1.1.62 // 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
|
||||
@ -141,67 +146,64 @@ require (
|
||||
github.com/morikuni/aec v1.0.0 // 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-20230728143221-c9dda82568d9 // indirect
|
||||
github.com/nrdcg/desec v0.7.0 // indirect
|
||||
github.com/nrdcg/bunny-go v0.0.0-20240207213615-dde5bf4577a3 // indirect
|
||||
github.com/nrdcg/desec v0.8.0 // indirect
|
||||
github.com/nrdcg/dnspod-go v0.4.0 // indirect
|
||||
github.com/nrdcg/freemyip v0.2.0 // indirect
|
||||
github.com/nrdcg/goinwx v0.10.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.3.0 // indirect
|
||||
github.com/nrdcg/porkbun v0.4.0 // indirect
|
||||
github.com/nzdjb/go-metaname v1.0.0 // indirect
|
||||
github.com/opencontainers/go-digest v1.0.0 // indirect
|
||||
github.com/opencontainers/image-spec v1.1.0 // indirect
|
||||
github.com/ovh/go-ovh v1.4.3 // indirect
|
||||
github.com/pkg/browser v0.0.0-20210911075715-681adbf594b8 // indirect
|
||||
github.com/ovh/go-ovh v1.6.0 // indirect
|
||||
github.com/pkg/browser v0.0.0-20240102092130-5ac0b6a4141c // indirect
|
||||
github.com/pkg/errors v0.9.1 // indirect
|
||||
github.com/pmezard/go-difflib v1.0.0 // indirect
|
||||
github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 // indirect
|
||||
github.com/pquerna/otp v1.4.0 // indirect
|
||||
github.com/sacloud/api-client-go v0.2.8 // indirect
|
||||
github.com/sacloud/go-http v0.1.6 // indirect
|
||||
github.com/sacloud/iaas-api-go v1.11.1 // indirect
|
||||
github.com/sacloud/packages-go v0.0.9 // indirect
|
||||
github.com/scaleway/scaleway-sdk-go v1.0.0-beta.22 // indirect
|
||||
github.com/sacloud/api-client-go v0.2.10 // indirect
|
||||
github.com/sacloud/go-http v0.1.8 // indirect
|
||||
github.com/sacloud/iaas-api-go v1.12.0 // indirect
|
||||
github.com/sacloud/packages-go v0.0.10 // indirect
|
||||
github.com/scaleway/scaleway-sdk-go v1.0.0-beta.30 // indirect
|
||||
github.com/sirupsen/logrus v1.9.3 // indirect
|
||||
github.com/smartystreets/go-aws-auth v0.0.0-20180515143844-0c1422d1fdb9 // indirect
|
||||
github.com/softlayer/softlayer-go v1.1.3 // indirect
|
||||
github.com/softlayer/softlayer-go v1.1.5 // indirect
|
||||
github.com/softlayer/xmlrpc v0.0.0-20200409220501-5f089df7cb7e // indirect
|
||||
github.com/spf13/cast v1.3.1 // indirect
|
||||
github.com/stretchr/objx v0.5.2 // indirect
|
||||
github.com/spf13/cast v1.6.0 // indirect
|
||||
github.com/stretchr/testify v1.9.0 // indirect
|
||||
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.490 // indirect
|
||||
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/dnspod v1.0.490 // indirect
|
||||
github.com/transip/gotransip/v6 v6.23.0 // indirect
|
||||
github.com/ultradns/ultradns-go-sdk v1.6.1-20231103022937-8589b6a // indirect
|
||||
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.1002 // indirect
|
||||
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/dnspod v1.0.1002 // indirect
|
||||
github.com/transip/gotransip/v6 v6.26.0 // indirect
|
||||
github.com/ultradns/ultradns-go-sdk v1.7.0-20240913052650-970ca9a // indirect
|
||||
github.com/vinyldns/go-vinyldns v0.9.16 // indirect
|
||||
github.com/vultr/govultr/v2 v2.17.2 // indirect
|
||||
github.com/xlzd/gotp v0.1.0
|
||||
github.com/yandex-cloud/go-genproto v0.0.0-20220805142335-27b56ddae16f // indirect
|
||||
github.com/yandex-cloud/go-sdk v0.0.0-20220805164847-cf028e604997 // indirect
|
||||
github.com/yandex-cloud/go-genproto v0.0.0-20240911120709-1fa0cb6f47c2 // indirect
|
||||
github.com/yandex-cloud/go-sdk v0.0.0-20240911121212-e4e74d0d02f5 // indirect
|
||||
go.opencensus.io v0.24.0 // indirect
|
||||
go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.52.0 // indirect
|
||||
go.opentelemetry.io/otel v1.27.0 // indirect
|
||||
go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.54.0 // indirect
|
||||
go.opentelemetry.io/otel v1.29.0 // indirect
|
||||
go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.27.0 // indirect
|
||||
go.opentelemetry.io/otel/metric v1.27.0 // indirect
|
||||
go.opentelemetry.io/otel/sdk v1.27.0 // indirect
|
||||
go.opentelemetry.io/otel/trace v1.27.0 // indirect
|
||||
go.uber.org/ratelimit v0.2.0 // indirect
|
||||
golang.org/x/crypto v0.23.0 // indirect
|
||||
golang.org/x/mod v0.16.0 // indirect
|
||||
golang.org/x/oauth2 v0.18.0 // indirect
|
||||
golang.org/x/sync v0.6.0 // indirect
|
||||
golang.org/x/time v0.5.0 // indirect
|
||||
golang.org/x/tools v0.19.0 // indirect
|
||||
google.golang.org/api v0.169.0 // indirect
|
||||
google.golang.org/appengine v1.6.8 // indirect
|
||||
google.golang.org/genproto v0.0.0-20240213162025-012b6fc9bca9 // indirect
|
||||
google.golang.org/genproto/googleapis/api v0.0.0-20240520151616-dc85e6b867a5 // indirect
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20240515191416-fc5f0ca64291 // indirect
|
||||
google.golang.org/grpc v1.64.0 // indirect
|
||||
google.golang.org/protobuf v1.34.1 // indirect
|
||||
go.opentelemetry.io/otel/metric v1.29.0 // indirect
|
||||
go.opentelemetry.io/otel/sdk v1.28.0 // indirect
|
||||
go.opentelemetry.io/otel/trace v1.29.0 // indirect
|
||||
go.uber.org/ratelimit v0.3.0 // indirect
|
||||
golang.org/x/crypto v0.27.0 // indirect
|
||||
golang.org/x/mod v0.21.0 // indirect
|
||||
golang.org/x/oauth2 v0.23.0 // indirect
|
||||
golang.org/x/sync v0.8.0 // indirect
|
||||
golang.org/x/time v0.6.0 // indirect
|
||||
golang.org/x/tools v0.25.0 // indirect
|
||||
google.golang.org/api v0.197.0 // indirect
|
||||
google.golang.org/genproto v0.0.0-20240903143218-8af14fe29dc1 // indirect
|
||||
google.golang.org/genproto/googleapis/api v0.0.0-20240827150818-7e3bb234dfed // indirect
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20240903143218-8af14fe29dc1 // indirect
|
||||
google.golang.org/grpc v1.66.1 // indirect
|
||||
google.golang.org/protobuf v1.34.2 // indirect
|
||||
gopkg.in/ini.v1 v1.67.0 // indirect
|
||||
gopkg.in/ns1/ns1-go.v2 v2.7.13 // indirect
|
||||
gopkg.in/ns1/ns1-go.v2 v2.12.0 // indirect
|
||||
gopkg.in/yaml.v2 v2.4.0 // indirect
|
||||
gopkg.in/yaml.v3 v3.0.1 // indirect
|
||||
gotest.tools/v3 v3.5.1 // indirect
|
||||
|
556
src/go.sum
556
src/go.sum
File diff suppressed because it is too large
Load Diff
@ -30,10 +30,11 @@ import (
|
||||
)
|
||||
|
||||
type CertificateInfoJSON struct {
|
||||
AcmeName string `json:"acme_name"`
|
||||
AcmeUrl string `json:"acme_url"`
|
||||
SkipTLS bool `json:"skip_tls"`
|
||||
UseDNS bool `json:"dns"`
|
||||
AcmeName string `json:"acme_name"` //ACME provider name
|
||||
AcmeUrl string `json:"acme_url"` //Custom ACME URL (if any)
|
||||
SkipTLS bool `json:"skip_tls"` //Skip TLS verification of upstream
|
||||
UseDNS bool `json:"dns"` //Use DNS challenge
|
||||
PropTimeout int `json:"prop_time"` //Propagation timeout
|
||||
}
|
||||
|
||||
// ACMEUser represents a user in the ACME system.
|
||||
@ -86,7 +87,7 @@ func (a *ACMEHandler) Logf(message string, err error) {
|
||||
}
|
||||
|
||||
// ObtainCert obtains a certificate for the specified domains.
|
||||
func (a *ACMEHandler) ObtainCert(domains []string, certificateName string, email string, caName string, caUrl string, skipTLS bool, useDNS bool) (bool, error) {
|
||||
func (a *ACMEHandler) ObtainCert(domains []string, certificateName string, email string, caName string, caUrl string, skipTLS bool, useDNS bool, propagationTimeout int) (bool, error) {
|
||||
a.Logf("Obtaining certificate for: "+strings.Join(domains, ", "), nil)
|
||||
|
||||
// generate private key
|
||||
@ -181,7 +182,7 @@ func (a *ACMEHandler) ObtainCert(domains []string, certificateName string, email
|
||||
return false, err
|
||||
}
|
||||
|
||||
provider, err := GetDnsChallengeProviderByName(dnsProvider, dnsCredentials)
|
||||
provider, err := GetDnsChallengeProviderByName(dnsProvider, dnsCredentials, propagationTimeout)
|
||||
if err != nil {
|
||||
a.Logf("Unable to resolve DNS challenge provider", err)
|
||||
return false, err
|
||||
@ -285,10 +286,11 @@ func (a *ACMEHandler) ObtainCert(domains []string, certificateName string, email
|
||||
|
||||
// Save certificate's ACME info for renew usage
|
||||
certInfo := &CertificateInfoJSON{
|
||||
AcmeName: caName,
|
||||
AcmeUrl: caUrl,
|
||||
SkipTLS: skipTLS,
|
||||
UseDNS: useDNS,
|
||||
AcmeName: caName,
|
||||
AcmeUrl: caUrl,
|
||||
SkipTLS: skipTLS,
|
||||
UseDNS: useDNS,
|
||||
PropTimeout: propagationTimeout,
|
||||
}
|
||||
|
||||
certInfoBytes, err := json.Marshal(certInfo)
|
||||
@ -452,12 +454,30 @@ func (a *ACMEHandler) HandleRenewCertificate(w http.ResponseWriter, r *http.Requ
|
||||
}
|
||||
|
||||
domains := strings.Split(domainPara, ",")
|
||||
|
||||
// Default propagation timeout is 300 seconds
|
||||
propagationTimeout := 300
|
||||
if dns {
|
||||
ppgTimeout, err := utils.PostPara(r, "ppgTimeout")
|
||||
if err == nil {
|
||||
propagationTimeout, err = strconv.Atoi(ppgTimeout)
|
||||
if err != nil {
|
||||
utils.SendErrorResponse(w, "Invalid propagation timeout value")
|
||||
return
|
||||
}
|
||||
if propagationTimeout < 60 {
|
||||
//Minimum propagation timeout is 60 seconds
|
||||
propagationTimeout = 60
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//Clean spaces in front or behind each domain
|
||||
cleanedDomains := []string{}
|
||||
for _, domain := range domains {
|
||||
cleanedDomains = append(cleanedDomains, strings.TrimSpace(domain))
|
||||
}
|
||||
result, err := a.ObtainCert(cleanedDomains, filename, email, ca, caUrl, skipTLS, dns)
|
||||
result, err := a.ObtainCert(cleanedDomains, filename, email, ca, caUrl, skipTLS, dns, propagationTimeout)
|
||||
if err != nil {
|
||||
utils.SendErrorResponse(w, jsonEscape(err.Error()))
|
||||
return
|
||||
|
@ -1,70 +1,56 @@
|
||||
package acme
|
||||
|
||||
import (
|
||||
"encoding/json"
|
||||
"strconv"
|
||||
|
||||
"github.com/go-acme/lego/v4/challenge"
|
||||
"imuslab.com/zoraxy/mod/acme/acmedns"
|
||||
)
|
||||
|
||||
func GetDnsChallengeProviderByName(dnsProvider string, dnsCredentials string) (challenge.Provider, error) {
|
||||
|
||||
//Original Implementation
|
||||
/*credentials, err := extractDnsCredentials(dnsCredentials)
|
||||
// Preprocessor function to get DNS challenge provider by name
|
||||
func GetDnsChallengeProviderByName(dnsProvider string, dnsCredentials string, ppgTimeout int) (challenge.Provider, error) {
|
||||
//Unpack the dnsCredentials (json string) to map
|
||||
var dnsCredentialsMap map[string]interface{}
|
||||
err := json.Unmarshal([]byte(dnsCredentials), &dnsCredentialsMap)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
setCredentialsIntoEnvironmentVariables(credentials)
|
||||
|
||||
provider, err := dns.NewDNSChallengeProviderByName(dnsProvider)
|
||||
*/
|
||||
|
||||
//New implementation using acmedns CICD pipeline generated datatype
|
||||
return acmedns.GetDNSProviderByJsonConfig(dnsProvider, dnsCredentials)
|
||||
}
|
||||
|
||||
/*
|
||||
Original implementation of DNS ACME using OS.Env as payload
|
||||
*/
|
||||
/*
|
||||
func setCredentialsIntoEnvironmentVariables(credentials map[string]string) {
|
||||
for key, value := range credentials {
|
||||
err := os.Setenv(key, value)
|
||||
if err != nil {
|
||||
log.Println("[ERR] Failed to set environment variable %s: %v", key, err)
|
||||
} else {
|
||||
log.Println("[INFO] Environment variable %s set successfully", key)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
func extractDnsCredentials(input string) (map[string]string, error) {
|
||||
result := make(map[string]string)
|
||||
|
||||
// Split the input string by newline character
|
||||
lines := strings.Split(input, "\n")
|
||||
|
||||
// Iterate over each line
|
||||
for _, line := range lines {
|
||||
// Split the line by "=" character
|
||||
//use SpliyN to make sure not to split the value if the value is base64
|
||||
parts := strings.SplitN(line, "=", 1)
|
||||
|
||||
// Check if the line is in the correct format
|
||||
if len(parts) == 2 {
|
||||
key := strings.TrimSpace(parts[0])
|
||||
value := strings.TrimSpace(parts[1])
|
||||
|
||||
// Add the key-value pair to the map
|
||||
result[key] = value
|
||||
|
||||
if value == "" || key == "" {
|
||||
//invalid config
|
||||
return result, errors.New("DNS credential extract failed")
|
||||
}
|
||||
//Clear the PollingInterval and PropagationTimeout field and conert to int
|
||||
userDefinedPollingInterval := 30
|
||||
if dnsCredentialsMap["PollingInterval"] != nil {
|
||||
userDefinedPollingIntervalRaw := dnsCredentialsMap["PollingInterval"].(string)
|
||||
delete(dnsCredentialsMap, "PollingInterval")
|
||||
convertedPollingInterval, err := strconv.Atoi(userDefinedPollingIntervalRaw)
|
||||
if err == nil {
|
||||
userDefinedPollingInterval = convertedPollingInterval
|
||||
}
|
||||
}
|
||||
|
||||
return result, nil
|
||||
}
|
||||
userDefinedPropagationTimeout := ppgTimeout
|
||||
if dnsCredentialsMap["PropagationTimeout"] != nil {
|
||||
userDefinedPropagationTimeoutRaw := dnsCredentialsMap["PropagationTimeout"].(string)
|
||||
delete(dnsCredentialsMap, "PropagationTimeout")
|
||||
convertedPropagationTimeout, err := strconv.Atoi(userDefinedPropagationTimeoutRaw)
|
||||
if err == nil {
|
||||
//Overwrite the default propagation timeout if it is requeted from UI
|
||||
userDefinedPropagationTimeout = convertedPropagationTimeout
|
||||
}
|
||||
}
|
||||
|
||||
*/
|
||||
//Restructure dnsCredentials string from map
|
||||
dnsCredentialsBytes, err := json.Marshal(dnsCredentialsMap)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
dnsCredentials = string(dnsCredentialsBytes)
|
||||
|
||||
//Using acmedns CICD pipeline generated datatype to optain the DNS provider
|
||||
return acmedns.GetDNSProviderByJsonConfig(
|
||||
dnsProvider,
|
||||
dnsCredentials,
|
||||
int64(userDefinedPropagationTimeout),
|
||||
int64(userDefinedPollingInterval),
|
||||
)
|
||||
}
|
||||
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -384,7 +384,7 @@ func (a *AutoRenewer) renewExpiredDomains(certs []*ExpiredCerts) ([]string, erro
|
||||
}
|
||||
}
|
||||
|
||||
_, err = a.AcmeHandler.ObtainCert(expiredCert.Domains, certName, a.RenewerConfig.Email, certInfo.AcmeName, certInfo.AcmeUrl, certInfo.SkipTLS, certInfo.UseDNS)
|
||||
_, err = a.AcmeHandler.ObtainCert(expiredCert.Domains, certName, a.RenewerConfig.Email, certInfo.AcmeName, certInfo.AcmeUrl, certInfo.SkipTLS, certInfo.UseDNS, certInfo.PropTimeout)
|
||||
if err != nil {
|
||||
a.Logf("Renew "+fileName+"("+strings.Join(expiredCert.Domains, ",")+") failed", err)
|
||||
} else {
|
||||
|
@ -138,7 +138,7 @@
|
||||
</div>
|
||||
<div class="field dnsChallengeOnly" style="display:none;">
|
||||
<div class="ui divider"></div>
|
||||
<p>DNS Credentials</p>
|
||||
<p>DNS Credentials</p>
|
||||
<div id="dnsProviderAPIFields">
|
||||
<p><i class="ui loading circle notch icon"></i> Generating WebForm</p>
|
||||
</div>
|
||||
@ -434,6 +434,7 @@
|
||||
$("#dnsProviderAPIFields").html("");
|
||||
//Generate a form for this config
|
||||
let booleanFieldsHTML = "";
|
||||
let optionalFieldsHTML = "";
|
||||
for (const [key, datatype] of Object.entries(data)) {
|
||||
if (datatype == "int"){
|
||||
$("#dnsProviderAPIFields").append(`<div class="ui fluid labeled dnsConfigField input" key="${key}" style="margin-top: 0.2em;">
|
||||
@ -447,6 +448,26 @@
|
||||
<input type="checkbox">
|
||||
<label>${key}</label>
|
||||
</div>`);
|
||||
}else if (datatype == "time.Duration"){
|
||||
let defaultIntValue = 300;
|
||||
let defaultMinValue = 60;
|
||||
if (key == "PollingInterval"){
|
||||
defaultIntValue = 30;
|
||||
defaultMinValue = 10;
|
||||
}else if (key == "PropagationTimeout"){
|
||||
defaultIntValue = 300;
|
||||
defaultMinValue = 60;
|
||||
}
|
||||
optionalFieldsHTML += (`<div class="ui fluid labeled dnsConfigField small input" key="${key}" style="margin-top: 0.2em;">
|
||||
<div class="ui basic blue label" style="font-weight: 300;">
|
||||
${key}
|
||||
</div>
|
||||
<input type="number" min="${defaultMinValue}" value="${defaultIntValue}">
|
||||
<div class="ui basic label" style="font-weight: 300;">
|
||||
secs
|
||||
</div>
|
||||
</div>`);
|
||||
|
||||
}else{
|
||||
//Default to string
|
||||
$("#dnsProviderAPIFields").append(`<div class="ui fluid labeled input dnsConfigField" key="${key}" style="margin-top: 0.2em;">
|
||||
@ -463,6 +484,9 @@
|
||||
if (booleanFieldsHTML != ""){
|
||||
$(".dnsConfigField.checkbox").checkbox();
|
||||
}
|
||||
|
||||
//Append the optional fields at the bottom, if exists
|
||||
$("#dnsProviderAPIFields").append(optionalFieldsHTML);
|
||||
});
|
||||
});
|
||||
|
||||
|
@ -139,8 +139,9 @@ import (
|
||||
|
||||
//name is the DNS provider name, e.g. cloudflare or gandi
|
||||
//JSON (js) must be in key-value string that match ConfigableFields Title in providers.json, e.g. {"Username":"far","Password":"boo"}
|
||||
func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64)(challenge.Provider, error){
|
||||
func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64, pollingInterval int64)(challenge.Provider, error){
|
||||
pgDuration := time.Duration(propagationTimeout) * time.Second
|
||||
plInterval := time.Duration(pollingInterval) * time.Second
|
||||
switch name {
|
||||
|
||||
case "alidns":
|
||||
@ -150,6 +151,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return alidns.NewDNSProviderConfig(cfg)
|
||||
case "allinkl":
|
||||
cfg := allinkl.NewDefaultConfig()
|
||||
@ -158,6 +160,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return allinkl.NewDNSProviderConfig(cfg)
|
||||
case "arvancloud":
|
||||
cfg := arvancloud.NewDefaultConfig()
|
||||
@ -166,6 +169,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return arvancloud.NewDNSProviderConfig(cfg)
|
||||
case "auroradns":
|
||||
cfg := auroradns.NewDefaultConfig()
|
||||
@ -174,6 +178,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return auroradns.NewDNSProviderConfig(cfg)
|
||||
case "autodns":
|
||||
cfg := autodns.NewDefaultConfig()
|
||||
@ -182,6 +187,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return autodns.NewDNSProviderConfig(cfg)
|
||||
case "azure":
|
||||
cfg := azure.NewDefaultConfig()
|
||||
@ -190,6 +196,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return azure.NewDNSProviderConfig(cfg)
|
||||
case "azuredns":
|
||||
cfg := azuredns.NewDefaultConfig()
|
||||
@ -198,6 +205,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return azuredns.NewDNSProviderConfig(cfg)
|
||||
case "bindman":
|
||||
cfg := bindman.NewDefaultConfig()
|
||||
@ -206,6 +214,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return bindman.NewDNSProviderConfig(cfg)
|
||||
case "bluecat":
|
||||
cfg := bluecat.NewDefaultConfig()
|
||||
@ -214,6 +223,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return bluecat.NewDNSProviderConfig(cfg)
|
||||
case "brandit":
|
||||
cfg := brandit.NewDefaultConfig()
|
||||
@ -222,6 +232,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return brandit.NewDNSProviderConfig(cfg)
|
||||
case "bunny":
|
||||
cfg := bunny.NewDefaultConfig()
|
||||
@ -230,6 +241,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return bunny.NewDNSProviderConfig(cfg)
|
||||
case "checkdomain":
|
||||
cfg := checkdomain.NewDefaultConfig()
|
||||
@ -238,6 +250,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return checkdomain.NewDNSProviderConfig(cfg)
|
||||
case "civo":
|
||||
cfg := civo.NewDefaultConfig()
|
||||
@ -246,6 +259,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return civo.NewDNSProviderConfig(cfg)
|
||||
case "clouddns":
|
||||
cfg := clouddns.NewDefaultConfig()
|
||||
@ -254,6 +268,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return clouddns.NewDNSProviderConfig(cfg)
|
||||
case "cloudflare":
|
||||
cfg := cloudflare.NewDefaultConfig()
|
||||
@ -262,6 +277,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return cloudflare.NewDNSProviderConfig(cfg)
|
||||
case "cloudns":
|
||||
cfg := cloudns.NewDefaultConfig()
|
||||
@ -270,6 +286,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return cloudns.NewDNSProviderConfig(cfg)
|
||||
case "cloudru":
|
||||
cfg := cloudru.NewDefaultConfig()
|
||||
@ -278,6 +295,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return cloudru.NewDNSProviderConfig(cfg)
|
||||
case "cloudxns":
|
||||
cfg := cloudxns.NewDefaultConfig()
|
||||
@ -286,6 +304,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return cloudxns.NewDNSProviderConfig(cfg)
|
||||
case "conoha":
|
||||
cfg := conoha.NewDefaultConfig()
|
||||
@ -294,6 +313,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return conoha.NewDNSProviderConfig(cfg)
|
||||
case "constellix":
|
||||
cfg := constellix.NewDefaultConfig()
|
||||
@ -302,6 +322,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return constellix.NewDNSProviderConfig(cfg)
|
||||
case "cpanel":
|
||||
cfg := cpanel.NewDefaultConfig()
|
||||
@ -310,6 +331,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return cpanel.NewDNSProviderConfig(cfg)
|
||||
case "derak":
|
||||
cfg := derak.NewDefaultConfig()
|
||||
@ -318,6 +340,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return derak.NewDNSProviderConfig(cfg)
|
||||
case "desec":
|
||||
cfg := desec.NewDefaultConfig()
|
||||
@ -326,6 +349,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return desec.NewDNSProviderConfig(cfg)
|
||||
case "digitalocean":
|
||||
cfg := digitalocean.NewDefaultConfig()
|
||||
@ -334,6 +358,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return digitalocean.NewDNSProviderConfig(cfg)
|
||||
case "directadmin":
|
||||
cfg := directadmin.NewDefaultConfig()
|
||||
@ -342,6 +367,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return directadmin.NewDNSProviderConfig(cfg)
|
||||
case "dnshomede":
|
||||
cfg := dnshomede.NewDefaultConfig()
|
||||
@ -350,6 +376,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return dnshomede.NewDNSProviderConfig(cfg)
|
||||
case "dnsimple":
|
||||
cfg := dnsimple.NewDefaultConfig()
|
||||
@ -358,6 +385,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return dnsimple.NewDNSProviderConfig(cfg)
|
||||
case "dnsmadeeasy":
|
||||
cfg := dnsmadeeasy.NewDefaultConfig()
|
||||
@ -366,6 +394,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return dnsmadeeasy.NewDNSProviderConfig(cfg)
|
||||
case "dnspod":
|
||||
cfg := dnspod.NewDefaultConfig()
|
||||
@ -374,6 +403,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return dnspod.NewDNSProviderConfig(cfg)
|
||||
case "dode":
|
||||
cfg := dode.NewDefaultConfig()
|
||||
@ -382,6 +412,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return dode.NewDNSProviderConfig(cfg)
|
||||
case "domeneshop":
|
||||
cfg := domeneshop.NewDefaultConfig()
|
||||
@ -390,6 +421,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return domeneshop.NewDNSProviderConfig(cfg)
|
||||
case "dreamhost":
|
||||
cfg := dreamhost.NewDefaultConfig()
|
||||
@ -398,6 +430,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return dreamhost.NewDNSProviderConfig(cfg)
|
||||
case "duckdns":
|
||||
cfg := duckdns.NewDefaultConfig()
|
||||
@ -406,6 +439,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return duckdns.NewDNSProviderConfig(cfg)
|
||||
case "dyn":
|
||||
cfg := dyn.NewDefaultConfig()
|
||||
@ -414,6 +448,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return dyn.NewDNSProviderConfig(cfg)
|
||||
case "dynu":
|
||||
cfg := dynu.NewDefaultConfig()
|
||||
@ -422,6 +457,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return dynu.NewDNSProviderConfig(cfg)
|
||||
case "easydns":
|
||||
cfg := easydns.NewDefaultConfig()
|
||||
@ -430,6 +466,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return easydns.NewDNSProviderConfig(cfg)
|
||||
case "efficientip":
|
||||
cfg := efficientip.NewDefaultConfig()
|
||||
@ -438,6 +475,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return efficientip.NewDNSProviderConfig(cfg)
|
||||
case "epik":
|
||||
cfg := epik.NewDefaultConfig()
|
||||
@ -446,6 +484,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return epik.NewDNSProviderConfig(cfg)
|
||||
case "freemyip":
|
||||
cfg := freemyip.NewDefaultConfig()
|
||||
@ -454,6 +493,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return freemyip.NewDNSProviderConfig(cfg)
|
||||
case "gandi":
|
||||
cfg := gandi.NewDefaultConfig()
|
||||
@ -462,6 +502,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return gandi.NewDNSProviderConfig(cfg)
|
||||
case "gandiv5":
|
||||
cfg := gandiv5.NewDefaultConfig()
|
||||
@ -470,6 +511,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return gandiv5.NewDNSProviderConfig(cfg)
|
||||
case "gcore":
|
||||
cfg := gcore.NewDefaultConfig()
|
||||
@ -478,6 +520,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return gcore.NewDNSProviderConfig(cfg)
|
||||
case "glesys":
|
||||
cfg := glesys.NewDefaultConfig()
|
||||
@ -486,6 +529,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return glesys.NewDNSProviderConfig(cfg)
|
||||
case "godaddy":
|
||||
cfg := godaddy.NewDefaultConfig()
|
||||
@ -494,6 +538,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return godaddy.NewDNSProviderConfig(cfg)
|
||||
case "googledomains":
|
||||
cfg := googledomains.NewDefaultConfig()
|
||||
@ -502,6 +547,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return googledomains.NewDNSProviderConfig(cfg)
|
||||
case "hetzner":
|
||||
cfg := hetzner.NewDefaultConfig()
|
||||
@ -510,6 +556,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return hetzner.NewDNSProviderConfig(cfg)
|
||||
case "hostingde":
|
||||
cfg := hostingde.NewDefaultConfig()
|
||||
@ -518,6 +565,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return hostingde.NewDNSProviderConfig(cfg)
|
||||
case "hosttech":
|
||||
cfg := hosttech.NewDefaultConfig()
|
||||
@ -526,6 +574,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return hosttech.NewDNSProviderConfig(cfg)
|
||||
case "httpnet":
|
||||
cfg := httpnet.NewDefaultConfig()
|
||||
@ -534,6 +583,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return httpnet.NewDNSProviderConfig(cfg)
|
||||
case "huaweicloud":
|
||||
cfg := huaweicloud.NewDefaultConfig()
|
||||
@ -542,6 +592,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return huaweicloud.NewDNSProviderConfig(cfg)
|
||||
case "hyperone":
|
||||
cfg := hyperone.NewDefaultConfig()
|
||||
@ -550,6 +601,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return hyperone.NewDNSProviderConfig(cfg)
|
||||
case "ibmcloud":
|
||||
cfg := ibmcloud.NewDefaultConfig()
|
||||
@ -558,6 +610,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return ibmcloud.NewDNSProviderConfig(cfg)
|
||||
case "iij":
|
||||
cfg := iij.NewDefaultConfig()
|
||||
@ -566,6 +619,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return iij.NewDNSProviderConfig(cfg)
|
||||
case "iijdpf":
|
||||
cfg := iijdpf.NewDefaultConfig()
|
||||
@ -574,6 +628,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return iijdpf.NewDNSProviderConfig(cfg)
|
||||
case "infoblox":
|
||||
cfg := infoblox.NewDefaultConfig()
|
||||
@ -582,6 +637,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return infoblox.NewDNSProviderConfig(cfg)
|
||||
case "infomaniak":
|
||||
cfg := infomaniak.NewDefaultConfig()
|
||||
@ -590,6 +646,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return infomaniak.NewDNSProviderConfig(cfg)
|
||||
case "internetbs":
|
||||
cfg := internetbs.NewDefaultConfig()
|
||||
@ -598,6 +655,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return internetbs.NewDNSProviderConfig(cfg)
|
||||
case "inwx":
|
||||
cfg := inwx.NewDefaultConfig()
|
||||
@ -606,6 +664,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return inwx.NewDNSProviderConfig(cfg)
|
||||
case "ionos":
|
||||
cfg := ionos.NewDefaultConfig()
|
||||
@ -614,6 +673,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return ionos.NewDNSProviderConfig(cfg)
|
||||
case "ipv64":
|
||||
cfg := ipv64.NewDefaultConfig()
|
||||
@ -622,6 +682,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return ipv64.NewDNSProviderConfig(cfg)
|
||||
case "iwantmyname":
|
||||
cfg := iwantmyname.NewDefaultConfig()
|
||||
@ -630,6 +691,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return iwantmyname.NewDNSProviderConfig(cfg)
|
||||
case "joker":
|
||||
cfg := joker.NewDefaultConfig()
|
||||
@ -638,6 +700,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return joker.NewDNSProviderConfig(cfg)
|
||||
case "liara":
|
||||
cfg := liara.NewDefaultConfig()
|
||||
@ -646,6 +709,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return liara.NewDNSProviderConfig(cfg)
|
||||
case "lightsail":
|
||||
cfg := lightsail.NewDefaultConfig()
|
||||
@ -654,6 +718,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return lightsail.NewDNSProviderConfig(cfg)
|
||||
case "limacity":
|
||||
cfg := limacity.NewDefaultConfig()
|
||||
@ -662,6 +727,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return limacity.NewDNSProviderConfig(cfg)
|
||||
case "linode":
|
||||
cfg := linode.NewDefaultConfig()
|
||||
@ -670,6 +736,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return linode.NewDNSProviderConfig(cfg)
|
||||
case "liquidweb":
|
||||
cfg := liquidweb.NewDefaultConfig()
|
||||
@ -678,6 +745,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return liquidweb.NewDNSProviderConfig(cfg)
|
||||
case "loopia":
|
||||
cfg := loopia.NewDefaultConfig()
|
||||
@ -686,6 +754,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return loopia.NewDNSProviderConfig(cfg)
|
||||
case "luadns":
|
||||
cfg := luadns.NewDefaultConfig()
|
||||
@ -694,6 +763,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return luadns.NewDNSProviderConfig(cfg)
|
||||
case "mailinabox":
|
||||
cfg := mailinabox.NewDefaultConfig()
|
||||
@ -702,6 +772,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return mailinabox.NewDNSProviderConfig(cfg)
|
||||
case "metaname":
|
||||
cfg := metaname.NewDefaultConfig()
|
||||
@ -710,6 +781,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return metaname.NewDNSProviderConfig(cfg)
|
||||
case "mijnhost":
|
||||
cfg := mijnhost.NewDefaultConfig()
|
||||
@ -718,6 +790,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return mijnhost.NewDNSProviderConfig(cfg)
|
||||
case "mittwald":
|
||||
cfg := mittwald.NewDefaultConfig()
|
||||
@ -726,6 +799,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return mittwald.NewDNSProviderConfig(cfg)
|
||||
case "mydnsjp":
|
||||
cfg := mydnsjp.NewDefaultConfig()
|
||||
@ -734,6 +808,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return mydnsjp.NewDNSProviderConfig(cfg)
|
||||
case "namecheap":
|
||||
cfg := namecheap.NewDefaultConfig()
|
||||
@ -742,6 +817,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return namecheap.NewDNSProviderConfig(cfg)
|
||||
case "namedotcom":
|
||||
cfg := namedotcom.NewDefaultConfig()
|
||||
@ -750,6 +826,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return namedotcom.NewDNSProviderConfig(cfg)
|
||||
case "namesilo":
|
||||
cfg := namesilo.NewDefaultConfig()
|
||||
@ -758,6 +835,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return namesilo.NewDNSProviderConfig(cfg)
|
||||
case "nearlyfreespeech":
|
||||
cfg := nearlyfreespeech.NewDefaultConfig()
|
||||
@ -766,6 +844,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return nearlyfreespeech.NewDNSProviderConfig(cfg)
|
||||
case "netcup":
|
||||
cfg := netcup.NewDefaultConfig()
|
||||
@ -774,6 +853,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return netcup.NewDNSProviderConfig(cfg)
|
||||
case "netlify":
|
||||
cfg := netlify.NewDefaultConfig()
|
||||
@ -782,6 +862,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return netlify.NewDNSProviderConfig(cfg)
|
||||
case "nicmanager":
|
||||
cfg := nicmanager.NewDefaultConfig()
|
||||
@ -790,6 +871,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return nicmanager.NewDNSProviderConfig(cfg)
|
||||
case "nifcloud":
|
||||
cfg := nifcloud.NewDefaultConfig()
|
||||
@ -798,6 +880,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return nifcloud.NewDNSProviderConfig(cfg)
|
||||
case "njalla":
|
||||
cfg := njalla.NewDefaultConfig()
|
||||
@ -806,6 +889,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return njalla.NewDNSProviderConfig(cfg)
|
||||
case "nodion":
|
||||
cfg := nodion.NewDefaultConfig()
|
||||
@ -814,6 +898,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return nodion.NewDNSProviderConfig(cfg)
|
||||
case "ns1":
|
||||
cfg := ns1.NewDefaultConfig()
|
||||
@ -822,6 +907,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return ns1.NewDNSProviderConfig(cfg)
|
||||
case "otc":
|
||||
cfg := otc.NewDefaultConfig()
|
||||
@ -830,6 +916,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return otc.NewDNSProviderConfig(cfg)
|
||||
case "ovh":
|
||||
cfg := ovh.NewDefaultConfig()
|
||||
@ -838,6 +925,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return ovh.NewDNSProviderConfig(cfg)
|
||||
case "pdns":
|
||||
cfg := pdns.NewDefaultConfig()
|
||||
@ -846,6 +934,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return pdns.NewDNSProviderConfig(cfg)
|
||||
case "plesk":
|
||||
cfg := plesk.NewDefaultConfig()
|
||||
@ -854,6 +943,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return plesk.NewDNSProviderConfig(cfg)
|
||||
case "porkbun":
|
||||
cfg := porkbun.NewDefaultConfig()
|
||||
@ -862,6 +952,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return porkbun.NewDNSProviderConfig(cfg)
|
||||
case "rackspace":
|
||||
cfg := rackspace.NewDefaultConfig()
|
||||
@ -870,6 +961,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return rackspace.NewDNSProviderConfig(cfg)
|
||||
case "rcodezero":
|
||||
cfg := rcodezero.NewDefaultConfig()
|
||||
@ -878,6 +970,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return rcodezero.NewDNSProviderConfig(cfg)
|
||||
case "regru":
|
||||
cfg := regru.NewDefaultConfig()
|
||||
@ -886,6 +979,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return regru.NewDNSProviderConfig(cfg)
|
||||
case "rfc2136":
|
||||
cfg := rfc2136.NewDefaultConfig()
|
||||
@ -894,6 +988,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return rfc2136.NewDNSProviderConfig(cfg)
|
||||
case "rimuhosting":
|
||||
cfg := rimuhosting.NewDefaultConfig()
|
||||
@ -902,6 +997,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return rimuhosting.NewDNSProviderConfig(cfg)
|
||||
case "route53":
|
||||
cfg := route53.NewDefaultConfig()
|
||||
@ -910,6 +1006,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return route53.NewDNSProviderConfig(cfg)
|
||||
case "safedns":
|
||||
cfg := safedns.NewDefaultConfig()
|
||||
@ -918,6 +1015,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return safedns.NewDNSProviderConfig(cfg)
|
||||
case "sakuracloud":
|
||||
cfg := sakuracloud.NewDefaultConfig()
|
||||
@ -926,6 +1024,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return sakuracloud.NewDNSProviderConfig(cfg)
|
||||
case "scaleway":
|
||||
cfg := scaleway.NewDefaultConfig()
|
||||
@ -934,6 +1033,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return scaleway.NewDNSProviderConfig(cfg)
|
||||
case "selectel":
|
||||
cfg := selectel.NewDefaultConfig()
|
||||
@ -942,6 +1042,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return selectel.NewDNSProviderConfig(cfg)
|
||||
case "selfhostde":
|
||||
cfg := selfhostde.NewDefaultConfig()
|
||||
@ -950,6 +1051,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return selfhostde.NewDNSProviderConfig(cfg)
|
||||
case "servercow":
|
||||
cfg := servercow.NewDefaultConfig()
|
||||
@ -958,6 +1060,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return servercow.NewDNSProviderConfig(cfg)
|
||||
case "shellrent":
|
||||
cfg := shellrent.NewDefaultConfig()
|
||||
@ -966,6 +1069,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return shellrent.NewDNSProviderConfig(cfg)
|
||||
case "simply":
|
||||
cfg := simply.NewDefaultConfig()
|
||||
@ -974,6 +1078,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return simply.NewDNSProviderConfig(cfg)
|
||||
case "sonic":
|
||||
cfg := sonic.NewDefaultConfig()
|
||||
@ -982,6 +1087,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return sonic.NewDNSProviderConfig(cfg)
|
||||
case "stackpath":
|
||||
cfg := stackpath.NewDefaultConfig()
|
||||
@ -990,6 +1096,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return stackpath.NewDNSProviderConfig(cfg)
|
||||
case "tencentcloud":
|
||||
cfg := tencentcloud.NewDefaultConfig()
|
||||
@ -998,6 +1105,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return tencentcloud.NewDNSProviderConfig(cfg)
|
||||
case "transip":
|
||||
cfg := transip.NewDefaultConfig()
|
||||
@ -1006,6 +1114,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return transip.NewDNSProviderConfig(cfg)
|
||||
case "ultradns":
|
||||
cfg := ultradns.NewDefaultConfig()
|
||||
@ -1014,6 +1123,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return ultradns.NewDNSProviderConfig(cfg)
|
||||
case "variomedia":
|
||||
cfg := variomedia.NewDefaultConfig()
|
||||
@ -1022,6 +1132,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return variomedia.NewDNSProviderConfig(cfg)
|
||||
case "vegadns":
|
||||
cfg := vegadns.NewDefaultConfig()
|
||||
@ -1030,6 +1141,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return vegadns.NewDNSProviderConfig(cfg)
|
||||
case "vercel":
|
||||
cfg := vercel.NewDefaultConfig()
|
||||
@ -1038,6 +1150,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return vercel.NewDNSProviderConfig(cfg)
|
||||
case "versio":
|
||||
cfg := versio.NewDefaultConfig()
|
||||
@ -1046,6 +1159,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return versio.NewDNSProviderConfig(cfg)
|
||||
case "vinyldns":
|
||||
cfg := vinyldns.NewDefaultConfig()
|
||||
@ -1054,6 +1168,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return vinyldns.NewDNSProviderConfig(cfg)
|
||||
case "vkcloud":
|
||||
cfg := vkcloud.NewDefaultConfig()
|
||||
@ -1062,6 +1177,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return vkcloud.NewDNSProviderConfig(cfg)
|
||||
case "vscale":
|
||||
cfg := vscale.NewDefaultConfig()
|
||||
@ -1070,6 +1186,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return vscale.NewDNSProviderConfig(cfg)
|
||||
case "vultr":
|
||||
cfg := vultr.NewDefaultConfig()
|
||||
@ -1078,6 +1195,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return vultr.NewDNSProviderConfig(cfg)
|
||||
case "webnames":
|
||||
cfg := webnames.NewDefaultConfig()
|
||||
@ -1086,6 +1204,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return webnames.NewDNSProviderConfig(cfg)
|
||||
case "websupport":
|
||||
cfg := websupport.NewDefaultConfig()
|
||||
@ -1094,6 +1213,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return websupport.NewDNSProviderConfig(cfg)
|
||||
case "wedos":
|
||||
cfg := wedos.NewDefaultConfig()
|
||||
@ -1102,6 +1222,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return wedos.NewDNSProviderConfig(cfg)
|
||||
case "yandex":
|
||||
cfg := yandex.NewDefaultConfig()
|
||||
@ -1110,6 +1231,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return yandex.NewDNSProviderConfig(cfg)
|
||||
case "yandex360":
|
||||
cfg := yandex360.NewDefaultConfig()
|
||||
@ -1118,6 +1240,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return yandex360.NewDNSProviderConfig(cfg)
|
||||
case "yandexcloud":
|
||||
cfg := yandexcloud.NewDefaultConfig()
|
||||
@ -1126,6 +1249,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return yandexcloud.NewDNSProviderConfig(cfg)
|
||||
case "zoneee":
|
||||
cfg := zoneee.NewDefaultConfig()
|
||||
@ -1134,6 +1258,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return zoneee.NewDNSProviderConfig(cfg)
|
||||
case "zonomi":
|
||||
cfg := zonomi.NewDefaultConfig()
|
||||
@ -1142,6 +1267,7 @@ func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return zonomi.NewDNSProviderConfig(cfg)
|
||||
default:
|
||||
return nil, fmt.Errorf("unrecognized DNS provider: %s", name)
|
||||
|
@ -36,8 +36,9 @@ import (
|
||||
|
||||
//name is the DNS provider name, e.g. cloudflare or gandi
|
||||
//JSON (js) must be in key-value string that match ConfigableFields Title in providers.json, e.g. {"Username":"far","Password":"boo"}
|
||||
func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64)(challenge.Provider, error){
|
||||
func GetDNSProviderByJsonConfig(name string, js string, propagationTimeout int64, pollingInterval int64)(challenge.Provider, error){
|
||||
pgDuration := time.Duration(propagationTimeout) * time.Second
|
||||
plInterval := time.Duration(pollingInterval) * time.Second
|
||||
switch name {
|
||||
{{magic}}
|
||||
default:
|
||||
@ -292,6 +293,7 @@ func main() {
|
||||
return nil, err
|
||||
}
|
||||
cfg.PropagationTimeout = pgDuration
|
||||
cfg.PollingInterval = plInterval
|
||||
return ` + providerName + `.NewDNSProviderConfig(cfg)`
|
||||
generatedConvertcode += codeSegment
|
||||
importList += ` "github.com/go-acme/lego/v4/providers/dns/` + providerName + "\"\n"
|
||||
|
Loading…
x
Reference in New Issue
Block a user