This commit is contained in:
mwiegand 2021-07-14 11:48:36 +02:00
parent 10eaaa7e12
commit ac5482335d
2 changed files with 6 additions and 16 deletions

View file

@ -1,5 +1,4 @@
from ipaddress import ip_interface from ipaddress import ip_interface
hdict, hlist = repo.libs.hashable.hdict, repo.libs.hashable.hlist
defaults = { defaults = {
@ -76,9 +75,9 @@ def collect_records(metadata):
for type, values in records.items(): for type, values in records.items():
for value in values: for value in values:
zones\ zones\
.setdefault(zone, set())\ .setdefault(zone, [])\
.add( .append(
hdict({'name': name, 'type': type, 'value': value}) {'name': name, 'type': type, 'value': value}
) )
return { return {
@ -105,10 +104,10 @@ def ns_records(metadata):
return { return {
'bind': { 'bind': {
'zones': { 'zones': {
zone: { zone: [
hdict({'name': '@', 'type': 'NS', 'value': f"{nameserver}."}) {'name': '@', 'type': 'NS', 'value': f"{nameserver}."}
for nameserver in nameservers for nameserver in nameservers
} for zone in metadata.get('bind/zones').keys() ] for zone in metadata.get('bind/zones').keys()
}, },
}, },
} }

View file

@ -1,9 +0,0 @@
import json
class hdict(dict):
def __hash__(self):
return hash(json.dumps(self, sorted=True))
class hlist(list):
def __hash__(self):
return hash(json.dumps(self, sorted=True))