From 16eb2752c05ff98e39c5c1f2f90e84cf1c70b21b Mon Sep 17 00:00:00 2001 From: jonathan lung Date: Fri, 12 Aug 2022 02:33:54 -0400 Subject: [PATCH 1/6] Fix nsupdate when updating NS record --- plugins/modules/net_tools/nsupdate.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugins/modules/net_tools/nsupdate.py b/plugins/modules/net_tools/nsupdate.py index 9f29d4b5fd6..1653cba871e 100644 --- a/plugins/modules/net_tools/nsupdate.py +++ b/plugins/modules/net_tools/nsupdate.py @@ -427,7 +427,7 @@ def ttl_changed(self): if lookup.rcode() != dns.rcode.NOERROR: self.module.fail_json(msg='Failed to lookup TTL of existing matching record.') - current_ttl = lookup.answer[0].ttl + current_ttl = lookup.authority[0].ttl if self.module.params['type'] == 'NS' else lookup.answer[0].ttl return current_ttl != self.module.params['ttl'] From d5d3f749cf8e196cd83a62692b98c459082a2075 Mon Sep 17 00:00:00 2001 From: jonathan lung Date: Fri, 12 Aug 2022 02:52:03 -0400 Subject: [PATCH 2/6] Changelog fragment --- changelogs/fragments/5112-fix-nsupdate-ns-entry.yaml | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 changelogs/fragments/5112-fix-nsupdate-ns-entry.yaml diff --git a/changelogs/fragments/5112-fix-nsupdate-ns-entry.yaml b/changelogs/fragments/5112-fix-nsupdate-ns-entry.yaml new file mode 100644 index 00000000000..55ce1fab72f --- /dev/null +++ b/changelogs/fragments/5112-fix-nsupdate-ns-entry.yaml @@ -0,0 +1,2 @@ +bugfixes: + - nsupdate - compatibility with ns records (https://github.com/ansible-collections/community.general/pull/5112). From 913854c739fc9d3b90b10501c506204e007d4cb9 Mon Sep 17 00:00:00 2001 From: Jonathan Lung Date: Sat, 13 Aug 2022 17:55:18 -0400 Subject: [PATCH 3/6] Update changelogs/fragments/5112-fix-nsupdate-ns-entry.yaml Co-authored-by: Felix Fontein --- changelogs/fragments/5112-fix-nsupdate-ns-entry.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/changelogs/fragments/5112-fix-nsupdate-ns-entry.yaml b/changelogs/fragments/5112-fix-nsupdate-ns-entry.yaml index 55ce1fab72f..c5f8653fd6e 100644 --- a/changelogs/fragments/5112-fix-nsupdate-ns-entry.yaml +++ b/changelogs/fragments/5112-fix-nsupdate-ns-entry.yaml @@ -1,2 +1,2 @@ bugfixes: - - nsupdate - compatibility with ns records (https://github.com/ansible-collections/community.general/pull/5112). + - nsupdate - compatibility with NS records (https://github.com/ansible-collections/community.general/pull/5112). From 2aff477e7eb1114156af8cdc6135d182277426c1 Mon Sep 17 00:00:00 2001 From: jonathan lung Date: Sun, 14 Aug 2022 14:43:40 -0400 Subject: [PATCH 4/6] Switch to fallback to AUTHORITY instead of using with NS type. --- plugins/modules/net_tools/nsupdate.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugins/modules/net_tools/nsupdate.py b/plugins/modules/net_tools/nsupdate.py index 1653cba871e..5428e93727a 100644 --- a/plugins/modules/net_tools/nsupdate.py +++ b/plugins/modules/net_tools/nsupdate.py @@ -427,7 +427,7 @@ def ttl_changed(self): if lookup.rcode() != dns.rcode.NOERROR: self.module.fail_json(msg='Failed to lookup TTL of existing matching record.') - current_ttl = lookup.authority[0].ttl if self.module.params['type'] == 'NS' else lookup.answer[0].ttl + current_ttl = lookup.answer[0].ttl if lookup.answer else lookup.authority[0].ttl return current_ttl != self.module.params['ttl'] From 8520d516b326e9563034b01a4e93ab9b3d087483 Mon Sep 17 00:00:00 2001 From: Jonathan Lung Date: Sun, 14 Aug 2022 14:59:41 -0400 Subject: [PATCH 5/6] Update plugins/modules/net_tools/nsupdate.py Co-authored-by: Felix Fontein --- plugins/modules/net_tools/nsupdate.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/plugins/modules/net_tools/nsupdate.py b/plugins/modules/net_tools/nsupdate.py index 5428e93727a..b60cec2fde4 100644 --- a/plugins/modules/net_tools/nsupdate.py +++ b/plugins/modules/net_tools/nsupdate.py @@ -427,7 +427,10 @@ def ttl_changed(self): if lookup.rcode() != dns.rcode.NOERROR: self.module.fail_json(msg='Failed to lookup TTL of existing matching record.') - current_ttl = lookup.answer[0].ttl if lookup.answer else lookup.authority[0].ttl + if self.module.params['type'] == 'NS: + current_ttl = lookup.answer[0].ttl if lookup.answer else lookup.authority[0].ttl + else: + current_ttl = lookup.answer[0].ttl return current_ttl != self.module.params['ttl'] From 2af5955d725552df185c6c95cb97fe1b484194a3 Mon Sep 17 00:00:00 2001 From: Jonathan Lung Date: Mon, 15 Aug 2022 00:25:39 -0400 Subject: [PATCH 6/6] Update plugins/modules/net_tools/nsupdate.py Co-authored-by: Felix Fontein --- plugins/modules/net_tools/nsupdate.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugins/modules/net_tools/nsupdate.py b/plugins/modules/net_tools/nsupdate.py index b60cec2fde4..512e44da2fc 100644 --- a/plugins/modules/net_tools/nsupdate.py +++ b/plugins/modules/net_tools/nsupdate.py @@ -427,7 +427,7 @@ def ttl_changed(self): if lookup.rcode() != dns.rcode.NOERROR: self.module.fail_json(msg='Failed to lookup TTL of existing matching record.') - if self.module.params['type'] == 'NS: + if self.module.params['type'] == 'NS': current_ttl = lookup.answer[0].ttl if lookup.answer else lookup.authority[0].ttl else: current_ttl = lookup.answer[0].ttl