octodns.processor.acme
Classes
|
|
- class octodns.processor.acme.AcmeManagingProcessor(name, **kwargs)[source]
Bases:
BaseProcessor- log = <Logger AcmeManagingProcessor (WARNING)>
- __init__(name, **kwargs)[source]
Example configuration:
processors: acme: class: octodns.processor.acme.AcmeManagingProcessor ... zones: something.com.: ... processors: - acme ...
- process_source_zone(desired, sources, lenient=False)[source]
Process the desired zone after all sources have populated.
Called after all sources have completed populate. Provides an opportunity for the processor to modify the desired zone that targets will receive.
- Parameters:
desired (octodns.zone.Zone) – The desired zone state after all sources have populated. This zone will be used as the target state for planning.
sources (list[octodns.provider.base.BaseProvider]) – List of source providers that populated the zone. May be empty for aliased zones.
lenient (bool) – When True, relaxed validation rules should be applied when modifying zone records.
- Returns:
The modified desired zone, typically the same object passed in.
- Return type:
Important
Will see
desiredafter any modifications done byProvider._process_desired_zoneand processors configured to run before this one.May modify
desireddirectly.Must return
desiredwhich will normally be thedesiredparam.Must not modify records directly;
record.copyshould be called, the results of which can be modified, and thenZone.add_recordmay be used withreplace=True.May call
Zone.remove_recordto remove records fromdesired.Sources may be empty, as will be the case for aliased zones.
Implementations should combine
self.lenient or lenientand pass the result to any record and zone calls that acceptlenientas a parameter, e.g.zone.add_record(..., lenient=lenient).
- process_target_zone(existing, target, lenient=False)[source]
Process the existing zone after the target has populated.
Called after a target has completed
populate, before changes are computed betweenexistinganddesired. This provides an opportunity to modify the existing zone state.- Parameters:
existing (octodns.zone.Zone) – The current zone state from the target provider.
target (octodns.provider.base.BaseProvider) – The target provider that populated the existing zone.
lenient (bool) – When True, relaxed validation rules should be applied when modifying zone records.
- Returns:
The modified existing zone, typically the same object passed in.
- Return type:
Important
Will see
existingafter any modifications done by processors configured to run before this one.May modify
existingdirectly.Must return
existingwhich will normally be theexistingparam.Must not modify records directly;
record.copyshould be called, the results of which can be modified, and thenZone.add_recordmay be used withreplace=True.May call
Zone.remove_recordto remove records fromexisting.Implementations should combine
self.lenient or lenientand pass the result to any record and zone calls that acceptlenientas a parameter, e.g.zone.add_record(..., lenient=lenient).
- octodns.processor.acme.AcmeMangingProcessor
alias of
AcmeManagingProcessor