2019-01-29 23:29:00 +08:00
|
|
|
---
|
|
|
|
name: require
|
|
|
|
parameters:
|
|
|
|
- path
|
|
|
|
---
|
|
|
|
|
|
|
|
`require(...)` behaves similarly to its equivalent in node.js. You can use it
|
|
|
|
to split your configuration across multiple files. If the path starts with a
|
|
|
|
`.`, it is calculated relative to the current file. For example:
|
|
|
|
|
|
|
|
{% include startExample.html %}
|
|
|
|
{% highlight js %}
|
|
|
|
|
|
|
|
// dnsconfig.js
|
|
|
|
require('kubernetes/clusters.js');
|
|
|
|
|
2019-05-23 21:26:40 +08:00
|
|
|
D("mydomain.net", REG, PROVIDER,
|
2019-01-29 23:29:00 +08:00
|
|
|
IncludeKubernetes()
|
|
|
|
);
|
|
|
|
|
|
|
|
{%endhighlight%}
|
|
|
|
|
|
|
|
{% highlight js %}
|
|
|
|
|
|
|
|
// kubernetes/clusters.js
|
|
|
|
require('./clusters/prod.js');
|
|
|
|
require('./clusters/dev.js');
|
|
|
|
|
|
|
|
function IncludeKubernetes() {
|
|
|
|
return [includeK8Sprod(), includeK8Sdev()];
|
|
|
|
}
|
|
|
|
|
|
|
|
{%endhighlight%}
|
|
|
|
|
|
|
|
{% highlight js %}
|
|
|
|
|
|
|
|
// kubernetes/clusters/prod.js
|
|
|
|
function includeK8Sprod() {
|
|
|
|
return [ /* ... */ ];
|
|
|
|
}
|
|
|
|
|
|
|
|
{%endhighlight%}
|
|
|
|
|
|
|
|
{% highlight js %}
|
|
|
|
|
|
|
|
// kubernetes/clusters/dev.js
|
|
|
|
function includeK8Sdev() {
|
|
|
|
return [ /* ... */ ];
|
|
|
|
}
|
|
|
|
|
|
|
|
{%endhighlight%}
|
|
|
|
{% include endExample.html %}
|
2019-05-23 21:26:40 +08:00
|
|
|
|
|
|
|
You can also use it to require json files and initialize variables with it:
|
|
|
|
For Example:
|
|
|
|
|
|
|
|
{% include startExample.html %}
|
|
|
|
{% highlight js %}
|
|
|
|
|
|
|
|
// dnsconfig.js
|
|
|
|
var domains = require('./domain-ip-map.json')
|
|
|
|
|
|
|
|
for (var domain in domains) {
|
|
|
|
D(domain, REG, PROVIDER,
|
|
|
|
A("@", domains[domain])
|
|
|
|
);
|
|
|
|
}
|
|
|
|
|
|
|
|
{%endhighlight%}
|
|
|
|
|
|
|
|
{%highlight js %}
|
|
|
|
// domain-ip-map.json
|
|
|
|
{
|
|
|
|
"mydomain.net": "1.1.1.1",
|
|
|
|
"myotherdomain.org": "5.5.5.5"
|
|
|
|
}
|
|
|
|
{%endhighlight}
|
|
|
|
{% include endExample.html %}
|