Skip to content

feat: centralized .env config, CITATION.cff, changelog automation, DX polish - #13

Closed
iracic82 wants to merge 1 commit into
mainfrom
feat/env-config-dx-polish
Closed

feat: centralized .env config, CITATION.cff, changelog automation, DX polish#13
iracic82 wants to merge 1 commit into
mainfrom
feat/env-config-dx-polish

Conversation

@iracic82

Copy link
Copy Markdown
Member

Summary

  • .env support: Added python-dotenv integration — CLI, MCP server, and examples auto-load .env files. CLI --backend now falls back to DNS_AID_BACKEND env var, then route53.
  • .env.example: Complete reference file with all backend variables (Route 53, Cloudflare, Infoblox, DDNS, SDK) documented and commented out.
  • CITATION.cff: Software citation with IETF draft-mozleywilliams-dnsop-bandaid-02 reference — enables GitHub's "Cite this repository" button.
  • Changelog automation: cliff.toml + orhun/git-cliff-action in release workflow generates release notes from conventional commits.
  • Docker playground docs: Added "Try Without Cloud Credentials" section to README and getting-started guide.
  • Configuration docs: Added "Configure" section explaining .env workflow to README and getting-started guide.
  • Bug fixes: __version__ 0.6.0 → 0.6.2, clone path cd dns-aidcd dns-aid-core.

Files Changed (15)

File Change
.env.example New — all backend config vars
CITATION.cff New — IETF draft citation
cliff.toml New — git-cliff config
.github/workflows/release.yml git-cliff changelog step
Makefile make changelog target
README.md Configure + Docker playground sections
docs/getting-started.md Configuration + Docker playground sections
pyproject.toml python-dotenv>=1.0.0 dependency
src/dns_aid/__init__.py Version fix 0.6.0 → 0.6.2
src/dns_aid/cli/main.py load_dotenv() + --backend env var fallback
src/dns_aid/mcp/server.py load_dotenv() in main()
examples/demo_*.py load_dotenv() + docstring updates
uv.lock Dependency + version update

Test Plan

  • All 648 unit tests pass (uv run pytest)
  • ruff format --check src/ passes
  • Live tested: CLI publish/discover/verify/delete on Route 53
  • Live tested: Python library discover/verify
  • Live tested: MCP server health/ready endpoints
  • .env loading verified for CLI, MCP, and examples
  • CI passing on iracic82/dns-aid-core

Addresses reviewer feedback items: .env configuration, CITATION.cff, Docker playground promotion, changelog automation, version mismatch fix, getting-started path fix.

… polish

- Add python-dotenv integration: CLI, MCP server, and examples auto-load .env
- CLI --backend now falls back to DNS_AID_BACKEND env var, then route53
- Create .env.example with all backend variables documented
- Create CITATION.cff with IETF draft-mozleywilliams-dnsop-bandaid reference
- Add git-cliff changelog automation (cliff.toml + release workflow)
- Add Docker playground docs to README and getting-started guide
- Add configuration section to README and getting-started guide
- Fix version mismatch: __version__ 0.6.0 → 0.6.2
- Fix clone path: cd dns-aid → cd dns-aid-core

Signed-off-by: Igor Racic <iracic82@gmail.com>
@iracic82

Copy link
Copy Markdown
Member Author

Closing — all changes from this PR were landed via PR #19 (cherry-pick), PR #20 (CLI onboarding), and subsequent commits through v0.6.5. The branch work is fully superseded.

@iracic82 iracic82 closed this Feb 16, 2026
@iracic82
iracic82 deleted the feat/env-config-dx-polish branch February 16, 2026 15:46
iracic82 added a commit that referenced this pull request May 12, 2026
CVE-2026-44431 (high) — sensitive headers forwarded across origins in
proxied low-level redirects; fixed in urllib3 2.7.0.
CVE-2026-44432 (high) — decompression-bomb safeguards bypassed in
parts of the streaming API; fixed in urllib3 2.7.0.

Pins urllib3>=2.7.0 as a direct floor in dev and all extras following
the existing pattern for lxml, pygments, pyjwt, and python-multipart.
Closes Dependabot alerts #12 and #13.

Signed-off-by: Igor Racic <iracic82@gmail.com>
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.

1 participant