From ea5093935b9988c3edb6abb6cf9f1d34cafb985f Mon Sep 17 00:00:00 2001 From: Ross McFarland Date: Wed, 11 Aug 2021 09:31:54 -0700 Subject: [PATCH] Support taking ownership of acme records --- octodns/processor/acme.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/octodns/processor/acme.py b/octodns/processor/acme.py index f50d924..8516ce2 100644 --- a/octodns/processor/acme.py +++ b/octodns/processor/acme.py @@ -16,6 +16,8 @@ class AcmeIgnoringProcessor(BaseProcessor): def __init__(self, name): super(AcmeIgnoringProcessor, self).__init__(name) + self._owned = set() + def process_source_zone(self, zone, *args, **kwargs): ret = self._clone_zone(zone) for record in zone.records: @@ -26,6 +28,7 @@ class AcmeIgnoringProcessor(BaseProcessor): record = record.copy() record.values.append('*octoDNS*') record.values.sort() + self._owned.add(record) ret.add_record(record) return ret @@ -36,7 +39,8 @@ class AcmeIgnoringProcessor(BaseProcessor): # e.g. _acme-challenge.foo.domain.com when managing domain.com if record._type == 'TXT' and \ record.name.startswith('_acme-challenge') and \ - '*octoDNS*' not in record.values: + '*octoDNS*' not in record.values and \ + record not in self._owned: self.log.info('_process: ignoring %s', record.fqdn) continue ret.add_record(record)