diff --git a/management/dns_update.py b/management/dns_update.py index 784a5b08..c231c8c4 100755 --- a/management/dns_update.py +++ b/management/dns_update.py @@ -881,10 +881,10 @@ def set_secondary_dns(hostnames, env): return do_dns_update(env) -def get_custom_dns_record(custom_dns, qname, rtype): +def get_custom_dns_records(custom_dns, qname, rtype): for qname1, rtype1, value in custom_dns: if qname1 == qname and rtype1 == rtype: - return value + yield value return None ######################################################################## diff --git a/management/status_checks.py b/management/status_checks.py index ed1a403e..06e1f6d6 100755 --- a/management/status_checks.py +++ b/management/status_checks.py @@ -11,7 +11,7 @@ import dateutil.parser, dateutil.tz import idna import psutil -from dns_update import get_dns_zones, build_tlsa_record, get_custom_dns_config, get_secondary_dns, get_custom_dns_record +from dns_update import get_dns_zones, build_tlsa_record, get_custom_dns_config, get_secondary_dns, get_custom_dns_records from web_update import get_web_domains, get_domains_with_a_records from ssl_certificates import get_ssl_certificates, get_domain_ssl_files, check_certificate from mailconfig import get_mail_domains, get_mail_aliases @@ -459,7 +459,7 @@ def check_dns_zone(domain, env, output, dns_zonefiles): # half working.) custom_dns_records = list(get_custom_dns_config(env)) # generator => list so we can reuse it - correct_ip = get_custom_dns_record(custom_dns_records, domain, "A") or env['PUBLIC_IP'] + correct_ip = "; ".join(sorted(get_custom_dns_records(custom_dns_records, domain, "A"))) or env['PUBLIC_IP'] custom_secondary_ns = get_secondary_dns(custom_dns_records, mode="NS") secondary_ns = custom_secondary_ns or ["ns2." + env['PRIMARY_HOSTNAME']]