|
|
|
@ -0,0 +1,59 @@ |
|
|
|
# octoDNS processors |
|
|
|
|
|
|
|
## Available processors |
|
|
|
|
|
|
|
These are listed in the main [`README`](../README.md#processors) |
|
|
|
|
|
|
|
## Configuring processors |
|
|
|
|
|
|
|
Configuring processors is done in the main config file. |
|
|
|
|
|
|
|
### Defining a processor configuration |
|
|
|
|
|
|
|
This is done under the top-level `processors` key in the octoDNS config file (for example `config.yaml`), as a sibling to the `manager` key. |
|
|
|
|
|
|
|
The `processors` key contains YAML objects, where the key is the name of the processor, and the `class` value within that object refers to the processor name. |
|
|
|
|
|
|
|
For example, to define a provider called `custom_meta` using the [`MetaProcessor`](../octodns/processor/meta.py) in order to extend the default `include_meta` behaviour: |
|
|
|
|
|
|
|
```yaml |
|
|
|
manager: |
|
|
|
include_meta: false # disable default, basic `meta` records |
|
|
|
processors: |
|
|
|
custom_meta: |
|
|
|
class: octodns.processor.meta.MetaProcessor |
|
|
|
record_name: meta |
|
|
|
include_time: true |
|
|
|
include_uuid: true |
|
|
|
include_provider: true |
|
|
|
include_version: false |
|
|
|
``` |
|
|
|
|
|
|
|
**NOTE:** the specific parameters for each processor are only documented within [the code](../octodns/processor/) |
|
|
|
|
|
|
|
### Utilising the processor configuration |
|
|
|
|
|
|
|
#### On **individual** domains |
|
|
|
|
|
|
|
Each domain can utilise the processor independently by adding the name of the defined processor to a `processors` key beneath a `zone`: |
|
|
|
|
|
|
|
```yaml |
|
|
|
zones: |
|
|
|
example.com.: |
|
|
|
source: |
|
|
|
- yaml_config |
|
|
|
target: |
|
|
|
- hetzner |
|
|
|
processors: |
|
|
|
- custom_meta |
|
|
|
``` |
|
|
|
|
|
|
|
#### On **all** domains |
|
|
|
|
|
|
|
To utilise the processor on **all** domains automatically, including new domains added to the `zones` config in future then you can add this to the `processors` key under the `manager` section of the configuration: |
|
|
|
|
|
|
|
```yaml |
|
|
|
manager: |
|
|
|
processors: |
|
|
|
- custom_meta |
|
|
|
``` |