fix templates

This commit is contained in:
Charlie Jacomme 2018-08-07 10:52:56 +02:00
parent 84cf40c212
commit 7b37ae5420

16
main.py
View file

@ -13,7 +13,8 @@ api_hostname = config.get('Re2o', 'hostname')
api_password = config.get('Re2o', 'password')
api_username = config.get('Re2o', 'username')
template_soa = ("{zone} IN SOA ns.{zone}. {mail} (\n"
template_soa = ("$ORIGIN {zone}.\n"
"@ IN SOA {ns} {mail} (\n"
" {serial} ; serial\n"
" {refresh} ; refresh\n"
" {retry} ; retry\n"
@ -70,10 +71,14 @@ def write_dns_files(api_client):
soa_mail_fields = zone['soa']['mail'].split('@')
soa_mail = "{}.{}.".format(soa_mail_fields[0].replace('.', '\\.'),
soa_mail_fields[1])
if zone['ns_records']:
ns = zone['ns_records'][0]['target']
else:
ns = "ns."+zone_name+"."
soa = template_soa.format(zone=zone_name,
mail=soa_mail,
serial=serial,
ns=ns,
refresh=zone['soa']['refresh'],
retry=zone['soa']['retry'],
expire=zone['soa']['expire'],
@ -176,8 +181,11 @@ def write_dns_reverse_file(api_client):
# We start by defining the soa, ns, mx which are comon to v4/v6
now = datetime.datetime.now(datetime.timezone.utc)
serial = now.strftime("%Y%m%d") + str(int(100*(now.hour*3600 + now.minute*60 + now.second)/86400))
extension = zone['extension']
if zone['ns_records']:
ns = zone['ns_records'][0]['target']
else:
ns = "ns"+extension+"."
soa_mail_fields = zone['soa']['mail'].split('@')
soa_mail = "{}.{}.".format(soa_mail_fields[0].replace('.', '\\.'),
soa_mail_fields[1])
@ -228,6 +236,7 @@ def write_dns_reverse_file(api_client):
soa = template_soa.format(zone=zone_name,
mail=soa_mail,
serial=serial,
ns=ns,
refresh=zone['soa']['refresh'],
retry=zone['soa']['retry'],
expire=zone['soa']['expire'],
@ -259,6 +268,7 @@ def write_dns_reverse_file(api_client):
soa = template_soa.format(zone=zone6_name,
mail=soa_mail,
serial=serial,
ns=ns,
refresh=zone['soa']['refresh'],
retry=zone['soa']['retry'],
expire=zone['soa']['expire'],