1
0
mirror of https://github.com/StackExchange/dnscontrol.git synced 2024-05-11 05:55:12 +00:00

NEW PROVIDER: Bunny DNS (#2265) (#2760)

This commit is contained in:
Pascal Mathis
2024-01-06 15:19:40 +01:00
committed by GitHub
parent 5daeafc73a
commit 961eaa7862
15 changed files with 730 additions and 3 deletions

View File

@@ -0,0 +1,69 @@
# Configuration
To use this provider, add an entry to `creds.json` with `TYPE` set to `BUNNY_DNS` along with
your [Bunny API Key](https://dash.bunny.net/account/settings).
Example:
{% code title="creds.json" %}
```json
{
"bunny_dns": {
"TYPE": "BUNNY_DNS",
"api_key": "your-bunny-api-key"
}
}
```
{% endcode %}
You can also use environment variables:
```shell
export BUNNY_API_KEY=XXXXXXXXX
```
{% code title="creds.json" %}
```json
{
"bunny_dns": {
"TYPE": "BUNNY_DNS",
"api_key": "$BUNNY_API_KEY"
}
}
```
{% endcode %}
## Metadata
This provider does not recognize any special metadata fields unique to Bunny DNS.
## Usage
An example configuration:
{% code title="dnsconfig.js" %}
```javascript
var REG_NONE = NewRegistrar("none");
var DSP_BUNNY_DNS = NewDnsProvider("bunny_dns");
D("example.com", REG_NONE, DnsProvider(DSP_BUNNY_DNS),
A("test", "1.2.3.4")
);
```
{% endcode %}
# Activation
DNSControl depends on the [Bunny API](https://docs.bunny.net/reference/bunnynet-api-overview) to manage your DNS
records. You will need to generate an [API key](https://dash.bunny.net/account/settings) to use this provider.
## New domains
If a domain does not exist in your Bunny account, DNSControl will automatically add it with the `push` command.
## Caveats
- Bunny DNS does not support dual-hosting or configuring custom TTLs for NS records on the zone apex.
- While custom nameservers are properly recognized by this provider, it is currently not possible to configure them.
- Any custom record types like Script, Redirect, Flatten or Pull Zone are currently not supported by this provider. Such
records will be completely ignored by DNSControl and left as-is.