mirror of
https://github.com/tobychui/zoraxy.git
synced 2025-06-01 13:17:21 +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
1276 lines
38 KiB
Go
1276 lines
38 KiB
Go
package acmedns
|
|
/*
|
|
THIS MODULE IS GENERATED AUTOMATICALLY
|
|
DO NOT EDIT THIS FILE
|
|
*/
|
|
import (
|
|
"encoding/json"
|
|
"fmt"
|
|
"time"
|
|
|
|
"github.com/go-acme/lego/v4/challenge"
|
|
"github.com/go-acme/lego/v4/providers/dns/alidns"
|
|
"github.com/go-acme/lego/v4/providers/dns/allinkl"
|
|
"github.com/go-acme/lego/v4/providers/dns/arvancloud"
|
|
"github.com/go-acme/lego/v4/providers/dns/auroradns"
|
|
"github.com/go-acme/lego/v4/providers/dns/autodns"
|
|
"github.com/go-acme/lego/v4/providers/dns/azure"
|
|
"github.com/go-acme/lego/v4/providers/dns/azuredns"
|
|
"github.com/go-acme/lego/v4/providers/dns/bindman"
|
|
"github.com/go-acme/lego/v4/providers/dns/bluecat"
|
|
"github.com/go-acme/lego/v4/providers/dns/brandit"
|
|
"github.com/go-acme/lego/v4/providers/dns/bunny"
|
|
"github.com/go-acme/lego/v4/providers/dns/checkdomain"
|
|
"github.com/go-acme/lego/v4/providers/dns/civo"
|
|
"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/cloudns"
|
|
"github.com/go-acme/lego/v4/providers/dns/cloudru"
|
|
"github.com/go-acme/lego/v4/providers/dns/cloudxns"
|
|
"github.com/go-acme/lego/v4/providers/dns/conoha"
|
|
"github.com/go-acme/lego/v4/providers/dns/constellix"
|
|
"github.com/go-acme/lego/v4/providers/dns/cpanel"
|
|
"github.com/go-acme/lego/v4/providers/dns/derak"
|
|
"github.com/go-acme/lego/v4/providers/dns/desec"
|
|
"github.com/go-acme/lego/v4/providers/dns/digitalocean"
|
|
"github.com/go-acme/lego/v4/providers/dns/directadmin"
|
|
"github.com/go-acme/lego/v4/providers/dns/dnshomede"
|
|
"github.com/go-acme/lego/v4/providers/dns/dnsimple"
|
|
"github.com/go-acme/lego/v4/providers/dns/dnsmadeeasy"
|
|
"github.com/go-acme/lego/v4/providers/dns/dnspod"
|
|
"github.com/go-acme/lego/v4/providers/dns/dode"
|
|
"github.com/go-acme/lego/v4/providers/dns/domeneshop"
|
|
"github.com/go-acme/lego/v4/providers/dns/dreamhost"
|
|
"github.com/go-acme/lego/v4/providers/dns/duckdns"
|
|
"github.com/go-acme/lego/v4/providers/dns/dyn"
|
|
"github.com/go-acme/lego/v4/providers/dns/dynu"
|
|
"github.com/go-acme/lego/v4/providers/dns/easydns"
|
|
"github.com/go-acme/lego/v4/providers/dns/efficientip"
|
|
"github.com/go-acme/lego/v4/providers/dns/epik"
|
|
"github.com/go-acme/lego/v4/providers/dns/freemyip"
|
|
"github.com/go-acme/lego/v4/providers/dns/gandi"
|
|
"github.com/go-acme/lego/v4/providers/dns/gandiv5"
|
|
"github.com/go-acme/lego/v4/providers/dns/gcore"
|
|
"github.com/go-acme/lego/v4/providers/dns/glesys"
|
|
"github.com/go-acme/lego/v4/providers/dns/godaddy"
|
|
"github.com/go-acme/lego/v4/providers/dns/googledomains"
|
|
"github.com/go-acme/lego/v4/providers/dns/hetzner"
|
|
"github.com/go-acme/lego/v4/providers/dns/hostingde"
|
|
"github.com/go-acme/lego/v4/providers/dns/hosttech"
|
|
"github.com/go-acme/lego/v4/providers/dns/httpnet"
|
|
"github.com/go-acme/lego/v4/providers/dns/huaweicloud"
|
|
"github.com/go-acme/lego/v4/providers/dns/hyperone"
|
|
"github.com/go-acme/lego/v4/providers/dns/ibmcloud"
|
|
"github.com/go-acme/lego/v4/providers/dns/iij"
|
|
"github.com/go-acme/lego/v4/providers/dns/iijdpf"
|
|
"github.com/go-acme/lego/v4/providers/dns/infoblox"
|
|
"github.com/go-acme/lego/v4/providers/dns/infomaniak"
|
|
"github.com/go-acme/lego/v4/providers/dns/internetbs"
|
|
"github.com/go-acme/lego/v4/providers/dns/inwx"
|
|
"github.com/go-acme/lego/v4/providers/dns/ionos"
|
|
"github.com/go-acme/lego/v4/providers/dns/ipv64"
|
|
"github.com/go-acme/lego/v4/providers/dns/iwantmyname"
|
|
"github.com/go-acme/lego/v4/providers/dns/joker"
|
|
"github.com/go-acme/lego/v4/providers/dns/liara"
|
|
"github.com/go-acme/lego/v4/providers/dns/lightsail"
|
|
"github.com/go-acme/lego/v4/providers/dns/limacity"
|
|
"github.com/go-acme/lego/v4/providers/dns/linode"
|
|
"github.com/go-acme/lego/v4/providers/dns/liquidweb"
|
|
"github.com/go-acme/lego/v4/providers/dns/loopia"
|
|
"github.com/go-acme/lego/v4/providers/dns/luadns"
|
|
"github.com/go-acme/lego/v4/providers/dns/mailinabox"
|
|
"github.com/go-acme/lego/v4/providers/dns/metaname"
|
|
"github.com/go-acme/lego/v4/providers/dns/mijnhost"
|
|
"github.com/go-acme/lego/v4/providers/dns/mittwald"
|
|
"github.com/go-acme/lego/v4/providers/dns/mydnsjp"
|
|
"github.com/go-acme/lego/v4/providers/dns/namecheap"
|
|
"github.com/go-acme/lego/v4/providers/dns/namedotcom"
|
|
"github.com/go-acme/lego/v4/providers/dns/namesilo"
|
|
"github.com/go-acme/lego/v4/providers/dns/nearlyfreespeech"
|
|
"github.com/go-acme/lego/v4/providers/dns/netcup"
|
|
"github.com/go-acme/lego/v4/providers/dns/netlify"
|
|
"github.com/go-acme/lego/v4/providers/dns/nicmanager"
|
|
"github.com/go-acme/lego/v4/providers/dns/nifcloud"
|
|
"github.com/go-acme/lego/v4/providers/dns/njalla"
|
|
"github.com/go-acme/lego/v4/providers/dns/nodion"
|
|
"github.com/go-acme/lego/v4/providers/dns/ns1"
|
|
"github.com/go-acme/lego/v4/providers/dns/otc"
|
|
"github.com/go-acme/lego/v4/providers/dns/ovh"
|
|
"github.com/go-acme/lego/v4/providers/dns/pdns"
|
|
"github.com/go-acme/lego/v4/providers/dns/plesk"
|
|
"github.com/go-acme/lego/v4/providers/dns/porkbun"
|
|
"github.com/go-acme/lego/v4/providers/dns/rackspace"
|
|
"github.com/go-acme/lego/v4/providers/dns/rcodezero"
|
|
"github.com/go-acme/lego/v4/providers/dns/regru"
|
|
"github.com/go-acme/lego/v4/providers/dns/rfc2136"
|
|
"github.com/go-acme/lego/v4/providers/dns/rimuhosting"
|
|
"github.com/go-acme/lego/v4/providers/dns/route53"
|
|
"github.com/go-acme/lego/v4/providers/dns/safedns"
|
|
"github.com/go-acme/lego/v4/providers/dns/sakuracloud"
|
|
"github.com/go-acme/lego/v4/providers/dns/scaleway"
|
|
"github.com/go-acme/lego/v4/providers/dns/selectel"
|
|
"github.com/go-acme/lego/v4/providers/dns/selfhostde"
|
|
"github.com/go-acme/lego/v4/providers/dns/servercow"
|
|
"github.com/go-acme/lego/v4/providers/dns/shellrent"
|
|
"github.com/go-acme/lego/v4/providers/dns/simply"
|
|
"github.com/go-acme/lego/v4/providers/dns/sonic"
|
|
"github.com/go-acme/lego/v4/providers/dns/stackpath"
|
|
"github.com/go-acme/lego/v4/providers/dns/tencentcloud"
|
|
"github.com/go-acme/lego/v4/providers/dns/transip"
|
|
"github.com/go-acme/lego/v4/providers/dns/ultradns"
|
|
"github.com/go-acme/lego/v4/providers/dns/variomedia"
|
|
"github.com/go-acme/lego/v4/providers/dns/vegadns"
|
|
"github.com/go-acme/lego/v4/providers/dns/vercel"
|
|
"github.com/go-acme/lego/v4/providers/dns/versio"
|
|
"github.com/go-acme/lego/v4/providers/dns/vinyldns"
|
|
"github.com/go-acme/lego/v4/providers/dns/vkcloud"
|
|
"github.com/go-acme/lego/v4/providers/dns/vscale"
|
|
"github.com/go-acme/lego/v4/providers/dns/vultr"
|
|
"github.com/go-acme/lego/v4/providers/dns/webnames"
|
|
"github.com/go-acme/lego/v4/providers/dns/websupport"
|
|
"github.com/go-acme/lego/v4/providers/dns/wedos"
|
|
"github.com/go-acme/lego/v4/providers/dns/yandex"
|
|
"github.com/go-acme/lego/v4/providers/dns/yandex360"
|
|
"github.com/go-acme/lego/v4/providers/dns/yandexcloud"
|
|
"github.com/go-acme/lego/v4/providers/dns/zoneee"
|
|
"github.com/go-acme/lego/v4/providers/dns/zonomi"
|
|
|
|
)
|
|
|
|
//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, pollingInterval int64)(challenge.Provider, error){
|
|
pgDuration := time.Duration(propagationTimeout) * time.Second
|
|
plInterval := time.Duration(pollingInterval) * time.Second
|
|
switch name {
|
|
|
|
case "alidns":
|
|
cfg := alidns.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return alidns.NewDNSProviderConfig(cfg)
|
|
case "allinkl":
|
|
cfg := allinkl.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return allinkl.NewDNSProviderConfig(cfg)
|
|
case "arvancloud":
|
|
cfg := arvancloud.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return arvancloud.NewDNSProviderConfig(cfg)
|
|
case "auroradns":
|
|
cfg := auroradns.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return auroradns.NewDNSProviderConfig(cfg)
|
|
case "autodns":
|
|
cfg := autodns.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return autodns.NewDNSProviderConfig(cfg)
|
|
case "azure":
|
|
cfg := azure.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return azure.NewDNSProviderConfig(cfg)
|
|
case "azuredns":
|
|
cfg := azuredns.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return azuredns.NewDNSProviderConfig(cfg)
|
|
case "bindman":
|
|
cfg := bindman.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return bindman.NewDNSProviderConfig(cfg)
|
|
case "bluecat":
|
|
cfg := bluecat.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return bluecat.NewDNSProviderConfig(cfg)
|
|
case "brandit":
|
|
cfg := brandit.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return brandit.NewDNSProviderConfig(cfg)
|
|
case "bunny":
|
|
cfg := bunny.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return bunny.NewDNSProviderConfig(cfg)
|
|
case "checkdomain":
|
|
cfg := checkdomain.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return checkdomain.NewDNSProviderConfig(cfg)
|
|
case "civo":
|
|
cfg := civo.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return civo.NewDNSProviderConfig(cfg)
|
|
case "clouddns":
|
|
cfg := clouddns.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return clouddns.NewDNSProviderConfig(cfg)
|
|
case "cloudflare":
|
|
cfg := cloudflare.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return cloudflare.NewDNSProviderConfig(cfg)
|
|
case "cloudns":
|
|
cfg := cloudns.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return cloudns.NewDNSProviderConfig(cfg)
|
|
case "cloudru":
|
|
cfg := cloudru.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return cloudru.NewDNSProviderConfig(cfg)
|
|
case "cloudxns":
|
|
cfg := cloudxns.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return cloudxns.NewDNSProviderConfig(cfg)
|
|
case "conoha":
|
|
cfg := conoha.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return conoha.NewDNSProviderConfig(cfg)
|
|
case "constellix":
|
|
cfg := constellix.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return constellix.NewDNSProviderConfig(cfg)
|
|
case "cpanel":
|
|
cfg := cpanel.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return cpanel.NewDNSProviderConfig(cfg)
|
|
case "derak":
|
|
cfg := derak.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return derak.NewDNSProviderConfig(cfg)
|
|
case "desec":
|
|
cfg := desec.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return desec.NewDNSProviderConfig(cfg)
|
|
case "digitalocean":
|
|
cfg := digitalocean.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return digitalocean.NewDNSProviderConfig(cfg)
|
|
case "directadmin":
|
|
cfg := directadmin.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return directadmin.NewDNSProviderConfig(cfg)
|
|
case "dnshomede":
|
|
cfg := dnshomede.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return dnshomede.NewDNSProviderConfig(cfg)
|
|
case "dnsimple":
|
|
cfg := dnsimple.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return dnsimple.NewDNSProviderConfig(cfg)
|
|
case "dnsmadeeasy":
|
|
cfg := dnsmadeeasy.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return dnsmadeeasy.NewDNSProviderConfig(cfg)
|
|
case "dnspod":
|
|
cfg := dnspod.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return dnspod.NewDNSProviderConfig(cfg)
|
|
case "dode":
|
|
cfg := dode.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return dode.NewDNSProviderConfig(cfg)
|
|
case "domeneshop":
|
|
cfg := domeneshop.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return domeneshop.NewDNSProviderConfig(cfg)
|
|
case "dreamhost":
|
|
cfg := dreamhost.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return dreamhost.NewDNSProviderConfig(cfg)
|
|
case "duckdns":
|
|
cfg := duckdns.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return duckdns.NewDNSProviderConfig(cfg)
|
|
case "dyn":
|
|
cfg := dyn.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return dyn.NewDNSProviderConfig(cfg)
|
|
case "dynu":
|
|
cfg := dynu.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return dynu.NewDNSProviderConfig(cfg)
|
|
case "easydns":
|
|
cfg := easydns.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return easydns.NewDNSProviderConfig(cfg)
|
|
case "efficientip":
|
|
cfg := efficientip.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return efficientip.NewDNSProviderConfig(cfg)
|
|
case "epik":
|
|
cfg := epik.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return epik.NewDNSProviderConfig(cfg)
|
|
case "freemyip":
|
|
cfg := freemyip.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return freemyip.NewDNSProviderConfig(cfg)
|
|
case "gandi":
|
|
cfg := gandi.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return gandi.NewDNSProviderConfig(cfg)
|
|
case "gandiv5":
|
|
cfg := gandiv5.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return gandiv5.NewDNSProviderConfig(cfg)
|
|
case "gcore":
|
|
cfg := gcore.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return gcore.NewDNSProviderConfig(cfg)
|
|
case "glesys":
|
|
cfg := glesys.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return glesys.NewDNSProviderConfig(cfg)
|
|
case "godaddy":
|
|
cfg := godaddy.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return godaddy.NewDNSProviderConfig(cfg)
|
|
case "googledomains":
|
|
cfg := googledomains.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return googledomains.NewDNSProviderConfig(cfg)
|
|
case "hetzner":
|
|
cfg := hetzner.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return hetzner.NewDNSProviderConfig(cfg)
|
|
case "hostingde":
|
|
cfg := hostingde.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return hostingde.NewDNSProviderConfig(cfg)
|
|
case "hosttech":
|
|
cfg := hosttech.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return hosttech.NewDNSProviderConfig(cfg)
|
|
case "httpnet":
|
|
cfg := httpnet.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return httpnet.NewDNSProviderConfig(cfg)
|
|
case "huaweicloud":
|
|
cfg := huaweicloud.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return huaweicloud.NewDNSProviderConfig(cfg)
|
|
case "hyperone":
|
|
cfg := hyperone.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return hyperone.NewDNSProviderConfig(cfg)
|
|
case "ibmcloud":
|
|
cfg := ibmcloud.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return ibmcloud.NewDNSProviderConfig(cfg)
|
|
case "iij":
|
|
cfg := iij.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return iij.NewDNSProviderConfig(cfg)
|
|
case "iijdpf":
|
|
cfg := iijdpf.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return iijdpf.NewDNSProviderConfig(cfg)
|
|
case "infoblox":
|
|
cfg := infoblox.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return infoblox.NewDNSProviderConfig(cfg)
|
|
case "infomaniak":
|
|
cfg := infomaniak.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return infomaniak.NewDNSProviderConfig(cfg)
|
|
case "internetbs":
|
|
cfg := internetbs.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return internetbs.NewDNSProviderConfig(cfg)
|
|
case "inwx":
|
|
cfg := inwx.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return inwx.NewDNSProviderConfig(cfg)
|
|
case "ionos":
|
|
cfg := ionos.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return ionos.NewDNSProviderConfig(cfg)
|
|
case "ipv64":
|
|
cfg := ipv64.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return ipv64.NewDNSProviderConfig(cfg)
|
|
case "iwantmyname":
|
|
cfg := iwantmyname.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return iwantmyname.NewDNSProviderConfig(cfg)
|
|
case "joker":
|
|
cfg := joker.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return joker.NewDNSProviderConfig(cfg)
|
|
case "liara":
|
|
cfg := liara.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return liara.NewDNSProviderConfig(cfg)
|
|
case "lightsail":
|
|
cfg := lightsail.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return lightsail.NewDNSProviderConfig(cfg)
|
|
case "limacity":
|
|
cfg := limacity.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return limacity.NewDNSProviderConfig(cfg)
|
|
case "linode":
|
|
cfg := linode.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return linode.NewDNSProviderConfig(cfg)
|
|
case "liquidweb":
|
|
cfg := liquidweb.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return liquidweb.NewDNSProviderConfig(cfg)
|
|
case "loopia":
|
|
cfg := loopia.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return loopia.NewDNSProviderConfig(cfg)
|
|
case "luadns":
|
|
cfg := luadns.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return luadns.NewDNSProviderConfig(cfg)
|
|
case "mailinabox":
|
|
cfg := mailinabox.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return mailinabox.NewDNSProviderConfig(cfg)
|
|
case "metaname":
|
|
cfg := metaname.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return metaname.NewDNSProviderConfig(cfg)
|
|
case "mijnhost":
|
|
cfg := mijnhost.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return mijnhost.NewDNSProviderConfig(cfg)
|
|
case "mittwald":
|
|
cfg := mittwald.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return mittwald.NewDNSProviderConfig(cfg)
|
|
case "mydnsjp":
|
|
cfg := mydnsjp.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return mydnsjp.NewDNSProviderConfig(cfg)
|
|
case "namecheap":
|
|
cfg := namecheap.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return namecheap.NewDNSProviderConfig(cfg)
|
|
case "namedotcom":
|
|
cfg := namedotcom.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return namedotcom.NewDNSProviderConfig(cfg)
|
|
case "namesilo":
|
|
cfg := namesilo.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return namesilo.NewDNSProviderConfig(cfg)
|
|
case "nearlyfreespeech":
|
|
cfg := nearlyfreespeech.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return nearlyfreespeech.NewDNSProviderConfig(cfg)
|
|
case "netcup":
|
|
cfg := netcup.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return netcup.NewDNSProviderConfig(cfg)
|
|
case "netlify":
|
|
cfg := netlify.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return netlify.NewDNSProviderConfig(cfg)
|
|
case "nicmanager":
|
|
cfg := nicmanager.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return nicmanager.NewDNSProviderConfig(cfg)
|
|
case "nifcloud":
|
|
cfg := nifcloud.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return nifcloud.NewDNSProviderConfig(cfg)
|
|
case "njalla":
|
|
cfg := njalla.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return njalla.NewDNSProviderConfig(cfg)
|
|
case "nodion":
|
|
cfg := nodion.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return nodion.NewDNSProviderConfig(cfg)
|
|
case "ns1":
|
|
cfg := ns1.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return ns1.NewDNSProviderConfig(cfg)
|
|
case "otc":
|
|
cfg := otc.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return otc.NewDNSProviderConfig(cfg)
|
|
case "ovh":
|
|
cfg := ovh.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return ovh.NewDNSProviderConfig(cfg)
|
|
case "pdns":
|
|
cfg := pdns.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return pdns.NewDNSProviderConfig(cfg)
|
|
case "plesk":
|
|
cfg := plesk.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return plesk.NewDNSProviderConfig(cfg)
|
|
case "porkbun":
|
|
cfg := porkbun.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return porkbun.NewDNSProviderConfig(cfg)
|
|
case "rackspace":
|
|
cfg := rackspace.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return rackspace.NewDNSProviderConfig(cfg)
|
|
case "rcodezero":
|
|
cfg := rcodezero.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return rcodezero.NewDNSProviderConfig(cfg)
|
|
case "regru":
|
|
cfg := regru.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return regru.NewDNSProviderConfig(cfg)
|
|
case "rfc2136":
|
|
cfg := rfc2136.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return rfc2136.NewDNSProviderConfig(cfg)
|
|
case "rimuhosting":
|
|
cfg := rimuhosting.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return rimuhosting.NewDNSProviderConfig(cfg)
|
|
case "route53":
|
|
cfg := route53.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return route53.NewDNSProviderConfig(cfg)
|
|
case "safedns":
|
|
cfg := safedns.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return safedns.NewDNSProviderConfig(cfg)
|
|
case "sakuracloud":
|
|
cfg := sakuracloud.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return sakuracloud.NewDNSProviderConfig(cfg)
|
|
case "scaleway":
|
|
cfg := scaleway.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return scaleway.NewDNSProviderConfig(cfg)
|
|
case "selectel":
|
|
cfg := selectel.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return selectel.NewDNSProviderConfig(cfg)
|
|
case "selfhostde":
|
|
cfg := selfhostde.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return selfhostde.NewDNSProviderConfig(cfg)
|
|
case "servercow":
|
|
cfg := servercow.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return servercow.NewDNSProviderConfig(cfg)
|
|
case "shellrent":
|
|
cfg := shellrent.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return shellrent.NewDNSProviderConfig(cfg)
|
|
case "simply":
|
|
cfg := simply.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return simply.NewDNSProviderConfig(cfg)
|
|
case "sonic":
|
|
cfg := sonic.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return sonic.NewDNSProviderConfig(cfg)
|
|
case "stackpath":
|
|
cfg := stackpath.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return stackpath.NewDNSProviderConfig(cfg)
|
|
case "tencentcloud":
|
|
cfg := tencentcloud.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return tencentcloud.NewDNSProviderConfig(cfg)
|
|
case "transip":
|
|
cfg := transip.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return transip.NewDNSProviderConfig(cfg)
|
|
case "ultradns":
|
|
cfg := ultradns.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return ultradns.NewDNSProviderConfig(cfg)
|
|
case "variomedia":
|
|
cfg := variomedia.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return variomedia.NewDNSProviderConfig(cfg)
|
|
case "vegadns":
|
|
cfg := vegadns.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return vegadns.NewDNSProviderConfig(cfg)
|
|
case "vercel":
|
|
cfg := vercel.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return vercel.NewDNSProviderConfig(cfg)
|
|
case "versio":
|
|
cfg := versio.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return versio.NewDNSProviderConfig(cfg)
|
|
case "vinyldns":
|
|
cfg := vinyldns.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return vinyldns.NewDNSProviderConfig(cfg)
|
|
case "vkcloud":
|
|
cfg := vkcloud.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return vkcloud.NewDNSProviderConfig(cfg)
|
|
case "vscale":
|
|
cfg := vscale.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return vscale.NewDNSProviderConfig(cfg)
|
|
case "vultr":
|
|
cfg := vultr.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return vultr.NewDNSProviderConfig(cfg)
|
|
case "webnames":
|
|
cfg := webnames.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return webnames.NewDNSProviderConfig(cfg)
|
|
case "websupport":
|
|
cfg := websupport.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return websupport.NewDNSProviderConfig(cfg)
|
|
case "wedos":
|
|
cfg := wedos.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return wedos.NewDNSProviderConfig(cfg)
|
|
case "yandex":
|
|
cfg := yandex.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return yandex.NewDNSProviderConfig(cfg)
|
|
case "yandex360":
|
|
cfg := yandex360.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return yandex360.NewDNSProviderConfig(cfg)
|
|
case "yandexcloud":
|
|
cfg := yandexcloud.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return yandexcloud.NewDNSProviderConfig(cfg)
|
|
case "zoneee":
|
|
cfg := zoneee.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return zoneee.NewDNSProviderConfig(cfg)
|
|
case "zonomi":
|
|
cfg := zonomi.NewDefaultConfig()
|
|
err := json.Unmarshal([]byte(js), &cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cfg.PropagationTimeout = pgDuration
|
|
cfg.PollingInterval = plInterval
|
|
return zonomi.NewDNSProviderConfig(cfg)
|
|
default:
|
|
return nil, fmt.Errorf("unrecognized DNS provider: %s", name)
|
|
}
|
|
}
|