Caddy module: dns.providers.azure
https://github.com/kurokobo/caddy-dns-azure.git
Azure DNS module for Caddy ===========================
UPDATE: This project has been moved to caddy-dns/azure and this repository is no longer maintained. See caddy-dns/azure for the latest release.
This package contains a DNS provider module for Caddy. It can be used to manage DNS records in Azure DNS Hosted zones.
dns.providers.azure
See the associated README in the libdns package for important information about credentials.
To compile this Caddy module, follow the steps describe at the Caddy Build from Source instructions and import the github.com/kurokobo/caddy-dns-azure plugin
To use this module for the ACME DNS challenge, configure the ACME issuer in your Caddy JSON like so:
{
"module": "acme",
"challenges": {
"dns": {
"provider": {
"name": "azure",
"tenant_id": "{env.AZURE_TENANT_ID}",
"client_id": "{env.AZURE_CLIENT_ID}",
"client_secret": "{env.AZURE_CLIENT_SECRET}",
"subscription_id": "{env.AZURE_SUBSCRIPTION_ID}",
"resource_group_name": "{env.AZURE_RESOURCE_GROUP_NAME}",
}
}
}
}
or with the Caddyfile:
tls {
dns azure {
tenant_id {$AZURE_TENANT_ID}
client_id {$AZURE_CLIENT_ID}
client_secret {$AZURE_CLIENT_SECRET}
subscription_id {$AZURE_SUBSCRIPTION_ID}
resource_group_name {$AZURE_RESOURCE_GROUP_NAME}
}
}
You can replace {$*} or {env.*} with the actual values if you prefer to put it directly in your config instead of an environment variable.