Commit Graph

5 Commits

Author SHA1 Message Date
eskimo
b73140cf15 chore: make plugin publish-safe for PyPI
Remove private git.eskimo.dev URLs (README install -> `pip install
certbot-dns-yeil`; setup.py url -> docs.yeil.app/dns). Update README to the
api.yeil.app/v1/dns gateway + gateway-relative paths. Flesh out setup.py
metadata (long_description from README, classifiers, python_requires,
project_urls, keywords). Add an MIT LICENSE file and a Python .gitignore
(so build/ dist/ *.egg-info/ __pycache__ stay out of the repo).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-22 23:52:45 -04:00
eskimo
e6d9e17d1e v3.0.0: authenticate with a yk_ App key, not email/app_password
The email+app_password -> /api/v1/auth/login bearer mint was retired
with personal app passwords (dns commit 834c90e). Switch to sending a
yeil App key (yk_<keyId>_<secret>) directly as the Bearer token, which
the DNS API's principal auth accepts. Single credential 'dns_yeil_api_key';
removed the login round-trip. BREAKING: existing credential files must
replace email/app_password with an api_key (an App with DNS record-write
permission, minted in team Apps). README + version bumped.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-21 21:08:30 -04:00
eskimo
a7f781e151 chore: remove em-dashes
Replaced with appropriate punctuation (colons, commas, semicolons,
periods) per grammatical context.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-12 23:29:50 -04:00
eskimo
456f034efb v2: authenticate via app password + use dns.yeil.app public API
Replaces direct dns-server RPC calls (admin shared key, NetBird-only
reachability) with calls to the public /api/v1 surface. The plugin
now logs in with an email + app password, caches the returned Bearer
for the run, then findZone/addRecord/deleteRecord through HTTPS.
Any yeil user with an owned DNS zone can use it from anywhere with
internet access — no more shared key, no NetBird requirement.

INI shape:
  dns_yeil_email = you@yourdomain.com
  dns_yeil_app_password = abcd-efgh-ijkl-mnop
  # dns_yeil_base_url = https://dns.yeil.app  (optional override)

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-11 14:46:22 -04:00
eskimo
2ccd6d9f14 Initial fork of certbot-dns-servfail; talks to the yeil dns-server RPC
DNS-01 authenticator that walks up the labels of the validation name,
calls findzone on the dns-server RPC to locate the registered parent
zone, then addrecord/deleterecord around the TXT challenge.

Auth is HTTP Basic with the shared rpc key (matches the protocol the
yeil DNS web app uses in dns/src/lib/rpc.ts).
2026-05-03 15:58:24 -04:00