From: Kefu Chai <k.chai@proxmox.com>
To: pve-devel@lists.proxmox.com
Subject: [PATCH v2 proxmox-acme 1/3] update acme.sh DNS API to upstream 3.1.2 tag
Date: Tue, 31 Mar 2026 15:10:39 +0800 [thread overview]
Message-ID: <20260331071041.1199091-2-k.chai@proxmox.com> (raw)
In-Reply-To: <20260331071041.1199091-1-k.chai@proxmox.com>
And update schema with new plugins and API changes.
This includes various fixes and improvements for existing plugins.
Fixes the following bugs:
- fix #7120: OVH DNS plugin now properly deletes TXT records
- fix #7028: Add Hetzner Cloud DNS plugin support
New plugins added:
- hetznercloud: Hetzner Cloud DNS API
- openprovider_rest: OpenProvider REST API
- spaceship: Spaceship DNS API
The active24 provider was updated to use the new v2 API, as the old
v1 API has been deprecated by Active24. Users need to re-configure
with Active24_ApiKey and Active24_ApiSecret instead of ACTIVE24_Token.
New credentials can be obtained from the Active24 admin panel.
Signed-off-by: Kefu Chai <k.chai@proxmox.com>
---
src/Makefile | 3 ++
src/acme.sh | 2 +-
src/dns-challenge-schema.json | 66 +++++++++++++++++++++++++++++++++--
3 files changed, 68 insertions(+), 3 deletions(-)
diff --git a/src/Makefile b/src/Makefile
index 9ee97c9..c948207 100644
--- a/src/Makefile
+++ b/src/Makefile
@@ -66,6 +66,7 @@ ACME_SOURCES = \
dnsapi/dns_he.sh \
dnsapi/dns_he_ddns.sh \
dnsapi/dns_hetzner.sh \
+ dnsapi/dns_hetznercloud.sh \
dnsapi/dns_hexonet.sh \
dnsapi/dns_hostingde.sh \
dnsapi/dns_huaweicloud.sh \
@@ -120,6 +121,7 @@ ACME_SOURCES = \
dnsapi/dns_one.sh \
dnsapi/dns_online.sh \
dnsapi/dns_openprovider.sh \
+ dnsapi/dns_openprovider_rest.sh \
dnsapi/dns_openstack.sh \
dnsapi/dns_opnsense.sh \
dnsapi/dns_ovh.sh \
@@ -138,6 +140,7 @@ ACME_SOURCES = \
dnsapi/dns_selfhost.sh \
dnsapi/dns_servercow.sh \
dnsapi/dns_simply.sh \
+ dnsapi/dns_spaceship.sh \
dnsapi/dns_technitium.sh \
dnsapi/dns_tele3.sh \
dnsapi/dns_tencent.sh \
diff --git a/src/acme.sh b/src/acme.sh
index 676d766..40290ad 160000
--- a/src/acme.sh
+++ b/src/acme.sh
@@ -1 +1 @@
-Subproject commit 676d76696b616c0e013ad8a9be1aedd01e4e0204
+Subproject commit 40290ad42a37aba57eb246e507c11944a52c0f68
diff --git a/src/dns-challenge-schema.json b/src/dns-challenge-schema.json
index 8669c86..b7ee5a3 100644
--- a/src/dns-challenge-schema.json
+++ b/src/dns-challenge-schema.json
@@ -24,8 +24,12 @@
"acmeproxy": {},
"active24": {
"fields": {
- "ACTIVE24_Token": {
- "description": "The API key",
+ "Active24_ApiKey": {
+ "description": "API Key (called 'Identifier' in Active24 Admin)",
+ "type": "string"
+ },
+ "Active24_ApiSecret": {
+ "description": "API Secret (called 'Secret key' in Active24 Admin)",
"type": "string"
}
},
@@ -187,6 +191,33 @@
"he": {},
"he_ddns": {},
"hetzner": {},
+ "hetznercloud": {
+ "fields": {
+ "HETZNER_API": {
+ "default": "https://api.hetzner.cloud/v1",
+ "description": "Override API endpoint (default: https://api.hetzner.cloud/v1)",
+ "optional": 1,
+ "type": "string"
+ },
+ "HETZNER_MAX_ATTEMPTS": {
+ "default": 120,
+ "description": "Number of 1s polls to wait for async actions (default: 120)",
+ "optional": 1,
+ "type": "integer"
+ },
+ "HETZNER_TOKEN": {
+ "description": "API token for the Hetzner Cloud DNS API",
+ "type": "string"
+ },
+ "HETZNER_TTL": {
+ "default": 120,
+ "description": "Custom TTL for new TXT records (default: 120)",
+ "optional": 1,
+ "type": "integer"
+ }
+ },
+ "name": "Hetzner Cloud DNS"
+ },
"hexonet": {},
"hostingde": {},
"huaweicloud": {},
@@ -298,6 +329,19 @@
"one": {},
"online": {},
"openprovider": {},
+ "openprovider_rest": {
+ "fields": {
+ "OPENPROVIDER_REST_PASSWORD": {
+ "description": "OpenProvider Account Password",
+ "type": "string"
+ },
+ "OPENPROVIDER_REST_USERNAME": {
+ "description": "OpenProvider Account Username",
+ "type": "string"
+ }
+ },
+ "name": "OpenProvider (REST API)"
+ },
"openstack": {},
"opnsense": {},
"ovh": {
@@ -368,6 +412,24 @@
"selfhost": {},
"servercow": {},
"simply": {},
+ "spaceship": {
+ "fields": {
+ "SPACESHIP_API_KEY": {
+ "description": "Spaceship API Key",
+ "type": "string"
+ },
+ "SPACESHIP_API_SECRET": {
+ "description": "Spaceship API Secret",
+ "type": "string"
+ },
+ "SPACESHIP_ROOT_DOMAIN": {
+ "description": "Root domain (optional, for manual override if auto-detection fails)",
+ "optional": 1,
+ "type": "string"
+ }
+ },
+ "name": "Spaceship"
+ },
"technitium": {},
"tele3": {},
"tencent": {},
--
2.47.3
next prev parent reply other threads:[~2026-03-31 7:10 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-03-31 7:10 [PATCH v2 proxmox-acme 0/3] " Kefu Chai
2026-03-31 7:10 ` Kefu Chai [this message]
2026-03-31 7:10 ` [PATCH v2 proxmox-acme 2/3] tests: verify all dnsapi plugins are listed in Makefile ACME_SOURCES Kefu Chai
2026-03-31 7:10 ` [PATCH v2 proxmox-acme 3/3] buildsys: run tests as part of dpkg-buildpackage Kefu Chai
2026-03-31 16:16 ` Thomas Lamprecht
2026-04-01 4:31 ` Kefu Chai
2026-03-31 16:48 ` applied: [PATCH v2 proxmox-acme 0/3] update acme.sh DNS API to upstream 3.1.2 tag Thomas Lamprecht
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260331071041.1199091-2-k.chai@proxmox.com \
--to=k.chai@proxmox.com \
--cc=pve-devel@lists.proxmox.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox