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

Add replace param to AutoArpa processor/provider

This commit is contained in:
Ross McFarland
2023-02-20 13:32:04 -08:00
parent 7dcf336217
commit 074be92428
2 changed files with 8 additions and 2 deletions

View File

@@ -14,6 +14,10 @@ Alternatively the value can be a dictionary with configuration options for the A
---
manager:
auto_arpa:
# Replace duplicate records rather than throw an error, default is False
# which throws an error
replace: False
# Explicitly set the TTL of auto-created records, default is 3600s, 1hr
ttl: 1800
```

View File

@@ -11,10 +11,12 @@ from .base import BaseProcessor
class AutoArpa(BaseProcessor):
def __init__(self, name, ttl=3600):
def __init__(self, name, ttl=3600, replace=False):
super().__init__(name)
self.log = getLogger(f'AutoArpa[{name}]')
self.log.info('__init__: ttl=%d, replace=%s', ttl, replace)
self.ttl = ttl
self.replace = replace
self._records = defaultdict(set)
def process_source_zone(self, desired, sources):
@@ -56,7 +58,7 @@ class AutoArpa(BaseProcessor):
name,
{'ttl': self.ttl, 'type': 'PTR', 'values': fqdns},
)
zone.add_record(record)
zone.add_record(record, replace=self.replace)
self.log.info(
'populate: found %s records', len(zone.records) - before