diff --git a/README.md b/README.md index 1e16afebc9..aaeade7549 100644 --- a/README.md +++ b/README.md @@ -52,180 +52,185 @@ Detailed documentation is available [here](https://go-acme.github.io/lego/dns). + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + + + + +
Abion Akamai EdgeDNS Alibaba Cloud DNS all-inklAmazon Lightsail
Amazon Lightsail Amazon Route 53 ArvanCloud Aurora DNSAutodns
Autodns Azure (deprecated) Azure DNS BindmanBluecat
Bluecat Brandit Bunny CheckdomainCivo
Civo Cloud.ru CloudDNS CloudflareClouDNS
ClouDNS CloudXNS ConoHa ConstellixCore-Networks
Core-Networks CPanel/WHM Derak Cloud deSEC.ioDesignate DNSaaS for Openstack
Designate DNSaaS for Openstack Digital Ocean DirectAdmin DNS Made EasydnsHome.de
dnsHome.de DNSimple DNSPod (deprecated) Domain Offensive (do.de)Domeneshop
Domeneshop DreamHost Duck DNS DynDynu
Dynu EasyDNS Efficient IP EpikExoscale
Exoscale External program freemyip.com G-CoreGandi
Gandi Gandi Live DNS (v5) Glesys Go DaddyGoogle Cloud
Google Cloud Google Domains Hetzner Hosting.deHosttech
Hosttech HTTP request http.net Huawei CloudHurricane Electric DNS
Hurricane Electric DNS HyperOne IBM Cloud (SoftLayer) IIJ DNS Platform ServiceInfoblox
Infoblox Infomaniak Internet Initiative Japan Internet.bsINWX
INWX Ionos IPv64 iwantmynameJoker
Joker Joohoi's ACME-DNS Liara Lima-CityLinode (v4)
Linode (v4) Liquid Web Loopia LuaDNSMail-in-a-Box
Mail-in-a-Box Manual Metaname mijn.hostMittwald
Mittwald MyDNS.jp MythicBeasts Name.comNamecheap
Namecheap Namesilo NearlyFreeSpeech.NET NetcupNetlify
Netlify Nicmanager NIFCloud NjallaNodion
Nodion NS1 Open Telekom Cloud Oracle CloudOVH
OVH plesk.com Porkbun PowerDNSRackspace
Rackspace RcodeZero reg.ru RFC2136RimuHosting
RimuHosting Sakura Cloud Scaleway SelectelSelectel v2
Selectel v2 SelfHost.(de|eu) Servercow ShellrentSimply.com
Simply.com Sonic Stackpath Tencent Cloud DNSTimeweb Cloud
Timeweb Cloud TransIP UKFast SafeDNS UltradnsVariomedia
Variomedia VegaDNS Vercel Versio.[nl|eu|uk]VinylDNS
VinylDNS VK Cloud Volcano Engine/火山引擎 VscaleVultr
Vultr Webnames Websupport WEDOSYandex 360
Yandex 360 Yandex Cloud Yandex PDD Zone.ee
Zonomi
diff --git a/cmd/zz_gen_cmd_dnshelp.go b/cmd/zz_gen_cmd_dnshelp.go index 34dac26132..ec870aa88a 100644 --- a/cmd/zz_gen_cmd_dnshelp.go +++ b/cmd/zz_gen_cmd_dnshelp.go @@ -13,6 +13,7 @@ import ( func allDNSCodes() string { providers := []string{ "manual", + "abion", "acme-dns", "alidns", "allinkl", @@ -162,6 +163,26 @@ func displayDNSHelp(w io.Writer, name string) error { ew := &errWriter{w: w} switch name { + case "abion": + // generated from: providers/dns/abion/abion.toml + ew.writeln(`Configuration for Abion.`) + ew.writeln(`Code: 'abion'`) + ew.writeln(`Since: 'v4.20.0'`) + ew.writeln() + + ew.writeln(`Credentials:`) + ew.writeln(` - "ABION_API_KEY": API key`) + ew.writeln() + + ew.writeln(`Additional Configuration:`) + ew.writeln(` - "ABION_HTTP_TIMEOUT": API request timeout`) + ew.writeln(` - "ABION_POLLING_INTERVAL": Time between DNS propagation check`) + ew.writeln(` - "ABION_PROPAGATION_TIMEOUT": Maximum waiting time for DNS propagation`) + ew.writeln(` - "ABION_TTL": The TTL of the TXT record used for the DNS challenge`) + + ew.writeln() + ew.writeln(`More information: https://go-acme.github.io/lego/dns/abion`) + case "acme-dns": // generated from: providers/dns/acmedns/acmedns.toml ew.writeln(`Configuration for Joohoi's ACME-DNS.`) diff --git a/docs/content/dns/zz_gen_abion.md b/docs/content/dns/zz_gen_abion.md new file mode 100644 index 0000000000..4234cb898e --- /dev/null +++ b/docs/content/dns/zz_gen_abion.md @@ -0,0 +1,67 @@ +--- +title: "Abion" +date: 2019-03-03T16:39:46+01:00 +draft: false +slug: abion +dnsprovider: + since: "v4.20.0" + code: "abion" + url: "https://abion.com" +--- + + + + + + +Configuration for [Abion](https://abion.com). + + + + +- Code: `abion` +- Since: v4.20.0 + + +Here is an example bash command using the Abion provider: + +```bash +ABION_API_KEY="xxxxxxxxxxxx" \ +lego --email you@example.com --dns abion --domains my.example.org run +``` + + + + +## Credentials + +| Environment Variable Name | Description | +|-----------------------|-------------| +| `ABION_API_KEY` | API key | + +The environment variable names can be suffixed by `_FILE` to reference a file instead of a value. +More information [here]({{% ref "dns#configuration-and-credentials" %}}). + + +## Additional Configuration + +| Environment Variable Name | Description | +|--------------------------------|-------------| +| `ABION_HTTP_TIMEOUT` | API request timeout | +| `ABION_POLLING_INTERVAL` | Time between DNS propagation check | +| `ABION_PROPAGATION_TIMEOUT` | Maximum waiting time for DNS propagation | +| `ABION_TTL` | The TTL of the TXT record used for the DNS challenge | + +The environment variable names can be suffixed by `_FILE` to reference a file instead of a value. +More information [here]({{% ref "dns#configuration-and-credentials" %}}). + + + + +## More information + +- [API documentation](https://demo.abion.com/pmapi-doc/openapi-ui/index.html) + + + + diff --git a/docs/data/zz_cli_help.toml b/docs/data/zz_cli_help.toml index a389c79391..ddea8c83e9 100644 --- a/docs/data/zz_cli_help.toml +++ b/docs/data/zz_cli_help.toml @@ -141,7 +141,7 @@ To display the documentation for a specific DNS provider, run: $ lego dnshelp -c code Supported DNS providers: - acme-dns, alidns, allinkl, arvancloud, auroradns, autodns, azure, azuredns, bindman, bluecat, brandit, bunny, checkdomain, civo, clouddns, cloudflare, cloudns, cloudru, cloudxns, conoha, constellix, corenetworks, cpanel, derak, desec, designate, digitalocean, directadmin, dnshomede, dnsimple, dnsmadeeasy, dnspod, dode, domeneshop, dreamhost, duckdns, dyn, dynu, easydns, edgedns, efficientip, epik, exec, exoscale, freemyip, gandi, gandiv5, gcloud, gcore, glesys, godaddy, googledomains, hetzner, hostingde, hosttech, httpnet, httpreq, huaweicloud, hurricane, hyperone, ibmcloud, iij, iijdpf, infoblox, infomaniak, internetbs, inwx, ionos, ipv64, iwantmyname, joker, liara, lightsail, limacity, linode, liquidweb, loopia, luadns, mailinabox, manual, metaname, mijnhost, mittwald, mydnsjp, mythicbeasts, namecheap, namedotcom, namesilo, nearlyfreespeech, netcup, netlify, nicmanager, nifcloud, njalla, nodion, ns1, oraclecloud, otc, ovh, pdns, plesk, porkbun, rackspace, rcodezero, regru, rfc2136, rimuhosting, route53, safedns, sakuracloud, scaleway, selectel, selectelv2, selfhostde, servercow, shellrent, simply, sonic, stackpath, tencentcloud, timewebcloud, transip, ultradns, variomedia, vegadns, vercel, versio, vinyldns, vkcloud, volcengine, vscale, vultr, webnames, websupport, wedos, yandex, yandex360, yandexcloud, zoneee, zonomi + abion, acme-dns, alidns, allinkl, arvancloud, auroradns, autodns, azure, azuredns, bindman, bluecat, brandit, bunny, checkdomain, civo, clouddns, cloudflare, cloudns, cloudru, cloudxns, conoha, constellix, corenetworks, cpanel, derak, desec, designate, digitalocean, directadmin, dnshomede, dnsimple, dnsmadeeasy, dnspod, dode, domeneshop, dreamhost, duckdns, dyn, dynu, easydns, edgedns, efficientip, epik, exec, exoscale, freemyip, gandi, gandiv5, gcloud, gcore, glesys, godaddy, googledomains, hetzner, hostingde, hosttech, httpnet, httpreq, huaweicloud, hurricane, hyperone, ibmcloud, iij, iijdpf, infoblox, infomaniak, internetbs, inwx, ionos, ipv64, iwantmyname, joker, liara, lightsail, limacity, linode, liquidweb, loopia, luadns, mailinabox, manual, metaname, mijnhost, mittwald, mydnsjp, mythicbeasts, namecheap, namedotcom, namesilo, nearlyfreespeech, netcup, netlify, nicmanager, nifcloud, njalla, nodion, ns1, oraclecloud, otc, ovh, pdns, plesk, porkbun, rackspace, rcodezero, regru, rfc2136, rimuhosting, route53, safedns, sakuracloud, scaleway, selectel, selectelv2, selfhostde, servercow, shellrent, simply, sonic, stackpath, tencentcloud, timewebcloud, transip, ultradns, variomedia, vegadns, vercel, versio, vinyldns, vkcloud, volcengine, vscale, vultr, webnames, websupport, wedos, yandex, yandex360, yandexcloud, zoneee, zonomi More information: https://go-acme.github.io/lego/dns """ diff --git a/providers/dns/zz_gen_dns_providers.go b/providers/dns/zz_gen_dns_providers.go index af6b8982a0..ba9c575cb8 100644 --- a/providers/dns/zz_gen_dns_providers.go +++ b/providers/dns/zz_gen_dns_providers.go @@ -7,6 +7,7 @@ import ( "github.com/go-acme/lego/v4/challenge" "github.com/go-acme/lego/v4/challenge/dns01" + "github.com/go-acme/lego/v4/providers/dns/abion" "github.com/go-acme/lego/v4/providers/dns/acmedns" "github.com/go-acme/lego/v4/providers/dns/alidns" "github.com/go-acme/lego/v4/providers/dns/allinkl" @@ -153,6 +154,8 @@ func NewDNSChallengeProviderByName(name string) (challenge.Provider, error) { switch name { case "manual": return dns01.NewDNSProviderManual() + case "abion": + return abion.NewDNSProvider() case "acme-dns", "acmedns": return acmedns.NewDNSProvider() case "alidns":