From 2afcf5c1fa87bdd6313709fa7cb8af2f70e26a59 Mon Sep 17 00:00:00 2001 From: badra001 Date: Tue, 25 Apr 2023 20:06:54 -0400 Subject: [PATCH] fix --- code/ddns-lambda.py | 30 ++++++++++++++---------------- code/ddns-lambda.zip | Bin 21352 -> 21365 bytes 2 files changed, 14 insertions(+), 16 deletions(-) diff --git a/code/ddns-lambda.py b/code/ddns-lambda.py index 394353a..5daba7d 100755 --- a/code/ddns-lambda.py +++ b/code/ddns-lambda.py @@ -73,7 +73,7 @@ LOGGER = logging.getLogger() account_id = None region = None -VERSION = '1.2.0b48' +VERSION = '1.2.0b49' # Read Env variables DEBUG_LOG_LEVEL = os.environ.get('DebugLogLevel', 'INFO') @@ -629,34 +629,34 @@ def lambda_handler( default_hostname = '-'.join(['ip'] + private_ip.split('.')) if tag_data['option_zone'].valid: if tag_data['option_name'].valid: - LOGGER.info("instance: %s, using tag_option hostname tag %s and tag_option zone tag %s.", + LOGGER.info("instance: %s, using tag_option.zone hostname %s and tag_option.zone zone %s.", instance_id, tag_data['option_name'].hostname, tag_data['option_zone'].zonename) f_hostname = tag_data['option_name'].hostname f_zonename = tag_data['option_zone'].zonename elif tag_data['name'].valid: - LOGGER.info("instance: %s, using tag_key Name hostname tag %s and tag_option zone tag %s.", + LOGGER.info("instance: %s, using tag_key.Name hostname %s and tag_option.zone zone %s.", instance_id, tag_data['name'].hostname, tag_data['option_zone'].zonename) f_hostname = tag_data['name'].hostname f_zonename = tag_data['option_zone'].zonename else: - LOGGER.info("instance: %s, using default ip-address %s for hostname and tag_option zone %s.", + LOGGER.info("instance: %s, using default ip-address %s for hostname and tag_option.zone zone %s.", instance_id, default_hostname, tag_data['option_zone'].zonename) f_hostname = default_hostname f_zonename = tag_data['option_zone'].zonename else: if tag_data['option_name'].valid: - LOGGER.info("instance: %s, using tag_option hostname %s and and tag_option zone %s.", + LOGGER.info("instance: %s, using tag_option.name hostname %s and and tag_option.name zone %s.", instance_id, tag_data['option_name'].hostname, tag_data['option_name'].zonename) f_hostname = tag_data['option_name'].hostname f_zonename = tag_data['option_name'].zonename if not tag_data['option_name'].valid and tag_data['option_name'].hostname != '' and tag_data['dhcp_options'].valid: - LOGGER.info("instance: %s, using tag_option hostname %s and and dhcp_options zone %s.", + LOGGER.info("instance: %s, using tag_option.name hostname %s and and dhcp_options zone %s.", instance_id, tag_data['option_name'].hostname, tag_data['dhcp_options'].zonename) f_hostname = tag_data['option_name'].hostname f_zonename = tag_data['dhcp_options'].zonename elif tag_data['name'].valid: - LOGGER.info("instance: %s, using tag_key Name hostname %s and tag_key Name zone %s.", + LOGGER.info("instance: %s, using tag_key.Name hostname %s and tag_key.Name zone %s.", instance_id, tag_data['name'].hostname, tag_data['name'].zonename) f_hostname = tag_data['name'].hostname f_zonename = tag_data['name'].zonename @@ -788,7 +788,7 @@ def lambda_handler( f"flags=noforward, not adding A and heritage TXT for host {final_private_hostname} zone {zone_data_forward.name} value {private_ip}") if not flags['noreverse']: - fqdn = create_fqdn(final_private_hostname, final_hosted_zone_name) + # fqdn = create_fqdn(final_private_hostname, final_hosted_zone_name) try: if reverse_zone_associated: create_response = create_resource_record( @@ -798,10 +798,10 @@ def lambda_handler( tag_data['ptr_entry'].hostname, tag_data['ptr_entry'].zonename, 'PTR', - fqdn, + final_private_dns_name, ) append_msg = f"PTR record in zone id: {zone_data_reverse.zone_id} owner {zone_data_reverse.owner_account} for hostname {tag_data['ptr_entry'].hostname} " + \ - f"zone {tag_data['ptr_entry'].zonename} to value {fqdn}" + f"zone {tag_data['ptr_entry'].zonename} to value {final_private_dns_name}" count[create_response] += 1 if create_response == 'success': LOGGER.info("instance: %s, Created %s", @@ -852,7 +852,7 @@ def lambda_handler( instance_id, str(err) + lineno()) else: LOGGER.info( - f"flags=noreverse, not adding PTR and heritage TXT for host {tag_data['ptr_entry'].hostname} zone {tag_data['ptr_entry'].zonename} value {fqdn}") + f"flags=noreverse, not adding PTR and heritage TXT for host {tag_data['ptr_entry'].hostname} zone {tag_data['ptr_entry'].zonename} value {final_private_dns_name}") else: # not running so delete the records. Note this may leave orphans around if the flags are set and then the host is shut down. We may want to remove no matter what. if not flags['noforward']: @@ -883,7 +883,7 @@ def lambda_handler( tag_data['ptr_entry'].hostname, tag_data['ptr_entry'].zonename, 'PTR', - create_fqdn(final_private_hostname, final_hosted_zone_name), + final_private_dns_name, heritage_value ) # only true if existing delete_records and the delete_success from the subroutine is true @@ -920,7 +920,7 @@ def lambda_handler( cname_host_name, cname_domain_suffix, 'CNAME', - create_fqdn(final_private_hostname, final_hosted_zone_name), + final_private_dns_name ) append_msg = f"CNAME record in zone id: {cname_domain_suffix_id} owner {phz_collection_by_vpc[cname_domain_suffix]['owner_account']} " + \ f"hostname {cname_host_name} in zone {cname_domain_suffix} with value {final_private_dns_name}" @@ -978,7 +978,7 @@ def lambda_handler( cname_host_name, cname_domain_suffix, 'CNAME', - create_fqdn(final_private_hostname, final_hosted_zone_name), + final_private_dns_name, heritage_value ) @@ -1520,8 +1520,6 @@ def new_change_resource_recordset(oclient, instance_id, zone_id, host_name, host LOGGER.debug("Creating %s record %s in zone %s: %s", record_type, host_name, hosted_zone_name, lineno()) -# fqdn = host_name -# fqdn += '.' + hosted_zone_name if hosted_zone_name in host_name else '' # retry to handle errors in the possible API call while i < MAX_API_RETRY: diff --git a/code/ddns-lambda.zip b/code/ddns-lambda.zip index 20cf87b3ea911a162de2242d0440f92a9b832296..34e7f1a231352dcacada3d8314d99bf85245a1da 100644 GIT binary patch delta 21254 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 Bl1~5t