dnscontrol/documentation/functions/global/DEFAULTS.md
Jeffrey Cafferata 05be3b83ed
DOCS: Added GitBook code blocks syntax for dnsconfig.js. (#2149)
Co-authored-by: Tom Limoncelli <tlimoncelli@stackoverflow.com>
2023-03-13 16:30:21 -04:00

46 lines
1 KiB
Markdown

---
name: DEFAULTS
parameters:
- modifiers...
parameter_types:
"modifiers...": DomainModifier[]
---
`DEFAULTS` allows you to declare a set of default arguments to apply to all subsequent domains. Subsequent calls to [`D`](D.md) will have these
arguments passed as if they were the first modifiers in the argument list.
## Example
We want to create backup zone files for all domains, but not actually register them. Also create a [`DefaultTTL`](../domain/DefaultTTL.md).
The domain `example.com` will have the defaults set.
{% code title="dnsconfig.js" %}
```javascript
var COMMON = NewDnsProvider("foo");
DEFAULTS(
DnsProvider(COMMON, 0),
DefaultTTL('1d')
);
D("example.com",
REGISTRAR,
DnsProvider("R53"),
A("@","1.2.3.4")
);
```
{% endcode %}
If you want to clear the defaults, you can do the following.
The domain `example2.com` will **not** have the defaults set.
{% code title="dnsconfig.js" %}
```javascript
DEFAULTS();
D("example2.com",
REGISTRAR,
DnsProvider("R53"),
A("@","1.2.3.4")
);
```
{% endcode %}