Skip to content

Release 1.0 - #10

Merged
bhillkeyfactor merged 8 commits into
mainfrom
release-1.0
Nov 2, 2026
Merged

bhillkeyfactor merged 8 commits into
mainfrom
release-1.0

Conversation

@bhillkeyfactor

Copy link
Copy Markdown
Collaborator

No description provided.

bhillkeyfactor and others added 8 commits August 24, 2026 18:02
* Scaffold LuaDNS DNS-01 domain validator plugin

Lays out the project the same way as cloudflare-cloudflaredns-dnsplugin
and ports the zone lookup and TXT record create/delete logic from
win-acme's plugin.validation.dns.luadns, adapted to be stateless
(record lookup for delete instead of an in-memory record map) and to
surface API failures via exceptions with status/body detail.

Includes unit tests covering zone-matching and record CRUD against a
faked HTTP handler, plus config validation on the domain validator.

* docs: auto-generate README and documentation [skip ci]

* Update CHANGELOG.md

* Update CHANGELOG.md

* Update integration-manifest.json

---------

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
* Update integration-manifest.json

* Update integration-manifest.json
* Update integration-manifest.json

* Update integration-manifest.json
Some CAs (for example CSC Global / Sectigo) validate domain control by asking
for a CNAME to be published, and request a domain validator of validation type
"cname" from the gateway. The plugin only registered a "dns-01" validator that
writes TXT records, so those requests found no matching provider ("No DNS
provider matched domain ... for validation type 'cname'") and the record had to
be published by hand.

Add LuaDnsCnameDomainValidator (validation type "cname", record type CNAME) and
register it in manifest.json next to the existing validator. The shared
credential, publish and cleanup logic moves to LuaDnsDomainValidatorBase; the
dns-01 validator keeps its behavior and only declares its validation and record
types. The CNAME target is sent as an absolute name (trailing dot added if the
CA omits it) so LuaDNS does not read it as relative to the zone.

Tests cover the validation type, absolute-target handling, API rejection,
type-scoped cleanup (a TXT at the same name is not deleted), idempotent cleanup,
and that manifest.json registers both validators. Not yet exercised against the
live LuaDNS API.
@bhillkeyfactor
bhillkeyfactor merged commit ef82540 into main Nov 2, 2026
20 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants