- Marked 12 tests as skip pending feature implementation - Features tracked in GitHub issue #686 (system log viewer feature completion) - Tests cover sorting by timestamp/level/method/URI/status, pagination controls, filtering by text/level, download functionality - Unblocks Phase 2 at 91.7% pass rate to proceed to Phase 3 security enforcement validation - TODO comments in code reference GitHub #686 for feature completion tracking - Tests skipped: Pagination (3), Search/Filter (2), Download (2), Sorting (1), Log Display (4)
PowerDNS Plugin for Charon
This is an example DNS provider plugin for Charon that adds support for PowerDNS Authoritative Server.
Building
To build this plugin, you must use CGO_ENABLED=1 and the same Go version as the Charon binary:
cd plugins/powerdns
CGO_ENABLED=1 go build -buildmode=plugin -o ../powerdns.so main.go
Installation
- Build the plugin as shown above
- Copy
powerdns.soto/app/plugins/(or your configured plugin directory) - Restart Charon to load the plugin
- The PowerDNS provider will appear in the DNS providers list
Configuration
The PowerDNS plugin requires:
- API URL: The PowerDNS HTTP API endpoint (e.g.,
https://pdns.example.com:8081) - API Key: Your PowerDNS API key (X-API-Key header value)
- Server ID (optional): PowerDNS server ID (default:
localhost)
Caddy Requirement
This plugin only handles the Charon UI/API integration. To use PowerDNS for DNS challenges, Caddy must be built with the caddy-dns/powerdns module.
Security
Always verify the plugin source before loading it. Plugins run in the same process as Charon and have full access to system resources.