Code
How acmesh-official/acme.sh is laid out, and where to start for common changes.
Imports between files were not traced, so there is no architecture grade.
Where to start reading
- Repository root
- Repository root
- Suggested starting pointAI
- Suggested starting pointAI
- Suggested starting pointAI
- Suggested starting pointAI
Find files for a task
AIAdd a new DNS provider for domain validation
- Review dnsapi/README.md to understand the required interface functions (dns_add, dns_rm, dns_status).
- Create a new file dnsapi/dns_[provider_name].sh implementing the required hook functions and API authentication.
- Test the provider with acme.sh using --dns dns_[provider_name] flag during certificate issuance.
- Submit pull request with provider implementation and documentation to CONTRIBUTING.md guidelines.
Add a new deployment target for certificate installation
- Review deploy/README.md to understand required deployment hook interface and lifecycle.
- Create deploy/[service_name].sh implementing deploy(), deploy_refresh(), and deploy_check_ecc() functions.
- Test with acme.sh using --deploy-hook [service_name] during cert installation and renewal.
Add a new notification channel for certificate events
- Create notify/[channel_name].sh implementing notify() function to send notifications.
- Define environment variables for authentication and configuration in the notify script.
- Configure acme.sh to invoke the notification hook via NOTIFY_HOOK environment variable.
- Document the notification provider in README.md with configuration examples and testing steps.
Change build or automation
RepoPilot lists up to 500 files, so a file missing here may still exist.
- No public API or start-up file could be picked out from the file names.