summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTakashi Sugimura <sugitk@users.noreply.github.com>2019-12-04 07:59:38 +0900
committerMatt Davis <nitzmahone@users.noreply.github.com>2019-12-03 14:59:38 -0800
commit95c023e1b2f7ad492943e7ca782763996d1ddd0b (patch)
treef320551e18c1503785cd3dbc51261007a7351cc8
parent7b18723858c991d4143734f7266d06c5b017c06b (diff)
downloadansible-95c023e1b2f7ad492943e7ca782763996d1ddd0b.tar.gz
Backport #58521, bug fixes to the Infoblox NIOS modules (#64972)
-rw-r--r--lib/ansible/module_utils/net_tools/nios/api.py4
-rw-r--r--lib/ansible/modules/net_tools/nios/nios_ptr_record.py2
-rw-r--r--test/integration/targets/nios_ptr_record/tasks/nios_ptr_record_idempotence.yml5
-rw-r--r--test/units/modules/net_tools/nios/test_nios_ptr_record.py37
4 files changed, 31 insertions, 17 deletions
diff --git a/lib/ansible/module_utils/net_tools/nios/api.py b/lib/ansible/module_utils/net_tools/nios/api.py
index 9bcd510b81..2588cbc5ba 100644
--- a/lib/ansible/module_utils/net_tools/nios/api.py
+++ b/lib/ansible/module_utils/net_tools/nios/api.py
@@ -329,8 +329,8 @@ class WapiModule(WapiBase):
if (ib_obj_type in (NIOS_HOST_RECORD, NIOS_NETWORK_VIEW, NIOS_DNS_VIEW)):
proposed_object = self.on_update(proposed_object, ib_spec)
res = self.update_object(ref, proposed_object)
- if (ib_obj_type in (NIOS_A_RECORD, NIOS_AAAA_RECORD)):
- # popping 'view' key as update of 'view' is not supported with respect to a:record/aaaa:record
+ if (ib_obj_type in (NIOS_A_RECORD, NIOS_AAAA_RECORD, NIOS_PTR_RECORD, NIOS_SRV_RECORD)):
+ # popping 'view' key as update of 'view' is not supported with respect to a:record/aaaa:record/srv:record/ptr:record
proposed_object = self.on_update(proposed_object, ib_spec)
del proposed_object['view']
res = self.update_object(ref, proposed_object)
diff --git a/lib/ansible/modules/net_tools/nios/nios_ptr_record.py b/lib/ansible/modules/net_tools/nios/nios_ptr_record.py
index e392521b57..9b3cf13ebc 100644
--- a/lib/ansible/modules/net_tools/nios/nios_ptr_record.py
+++ b/lib/ansible/modules/net_tools/nios/nios_ptr_record.py
@@ -115,7 +115,7 @@ def main():
# Module entry point
ib_spec = dict(
name=dict(required=False),
- view=dict(aliases=['dns_view']),
+ view=dict(aliases=['dns_view'], ib_req=True),
ipv4addr=dict(aliases=['ipv4'], ib_req=True),
ipv6addr=dict(aliases=['ipv6'], ib_req=True),
ptrdname=dict(ib_req=True),
diff --git a/test/integration/targets/nios_ptr_record/tasks/nios_ptr_record_idempotence.yml b/test/integration/targets/nios_ptr_record/tasks/nios_ptr_record_idempotence.yml
index 64eccb9e51..a233d80f55 100644
--- a/test/integration/targets/nios_ptr_record/tasks/nios_ptr_record_idempotence.yml
+++ b/test/integration/targets/nios_ptr_record/tasks/nios_ptr_record_idempotence.yml
@@ -26,6 +26,7 @@
ptrdname: ptr.ansible.com
ipv4: 192.168.10.1
comment: this is a test comment
+ view: default
state: present
provider: "{{ nios_provider }}"
register: ipv4_ptr_update1
@@ -36,6 +37,7 @@
ptrdname: ptr.ansible.com
ipv4: 192.168.10.1
comment: this is a test comment
+ view: default
state: present
provider: "{{ nios_provider }}"
register: ipv4_ptr_update2
@@ -45,6 +47,7 @@
name: ptr.ansible.com
ptrdname: ptr.ansible.com
ipv4: 192.168.10.1
+ view: default
state: absent
provider: "{{ nios_provider }}"
register: ipv4_ptr_delete1
@@ -54,6 +57,7 @@
ptrdname: ptr.ansible.com
name: ptr.ansible.com
ipv4: 192.168.10.1
+ view: default
state: absent
provider: "{{ nios_provider }}"
register: ipv4_ptr_delete2
@@ -63,6 +67,7 @@
ptrdname: ptr6.ansible.com
name: ptr6.ansible.com
ipv6: "2002:8ac3:802d:1242:20d:60ff:fe38:6d16"
+ view: default
state: present
provider: "{{ nios_provider }}"
register: ipv6_ptr_create1
diff --git a/test/units/modules/net_tools/nios/test_nios_ptr_record.py b/test/units/modules/net_tools/nios/test_nios_ptr_record.py
index 66665eed3a..f41132d292 100644
--- a/test/units/modules/net_tools/nios/test_nios_ptr_record.py
+++ b/test/units/modules/net_tools/nios/test_nios_ptr_record.py
@@ -60,14 +60,15 @@ class TestNiosPTRRecordModule(TestNiosModule):
def test_nios_ptr_record_create(self):
self.module.params = {'provider': None, 'state': 'present', 'ptrdname': 'ansible.test.com',
- 'ipv4addr': '10.36.241.14', 'comment': None, 'extattrs': None}
+ 'ipv4addr': '10.36.241.14', 'comment': None, 'extattrs': None, 'view': 'default'}
test_object = None
test_spec = {
"ipv4addr": {"ib_req": True},
"ptrdname": {"ib_req": True},
"comment": {},
- "extattrs": {}
+ "extattrs": {},
+ "view": {"ib_req": True}
}
wapi = self._get_wapi(test_object)
@@ -75,11 +76,11 @@ class TestNiosPTRRecordModule(TestNiosModule):
res = wapi.run('testobject', test_spec)
self.assertTrue(res['changed'])
- wapi.create_object.assert_called_once_with('testobject', {'ipv4addr': '10.36.241.14', 'ptrdname': 'ansible.test.com'})
+ wapi.create_object.assert_called_once_with('testobject', {'ipv4addr': '10.36.241.14', 'ptrdname': 'ansible.test.com', 'view': 'default'})
def test_nios_ptr_record_remove(self):
self.module.params = {'provider': None, 'state': 'absent', 'ptrdname': 'ansible.test.com',
- 'ipv4addr': '10.36.241.14', 'comment': None, 'extattrs': None}
+ 'ipv4addr': '10.36.241.14', 'comment': None, 'extattrs': None, 'view': 'default'}
ref = "record:ptr/ZG5zLm5ldHdvcmtfdmlldyQw:14.241.36.10.in-addr.arpa/default"
@@ -88,6 +89,7 @@ class TestNiosPTRRecordModule(TestNiosModule):
"_ref": ref,
"ptrdname": "ansible.test.com",
"ipv4addr": "10.36.241.14",
+ "view": "default",
"extattrs": {'Site': {'value': 'test'}}
}]
@@ -95,7 +97,8 @@ class TestNiosPTRRecordModule(TestNiosModule):
"ipv4addr": {"ib_req": True},
"ptrdname": {"ib_req": True},
"comment": {},
- "extattrs": {}
+ "extattrs": {},
+ "view": {"ib_req": True}
}
wapi = self._get_wapi(test_object)
@@ -105,7 +108,7 @@ class TestNiosPTRRecordModule(TestNiosModule):
def test_nios_ptr_record_update_comment(self):
self.module.params = {'provider': None, 'state': 'present', 'ptrdname': 'ansible.test.com',
- 'ipv4addr': '10.36.241.14', 'comment': 'updated comment', 'extattrs': None}
+ 'ipv4addr': '10.36.241.14', 'comment': 'updated comment', 'extattrs': None, 'view': 'default'}
test_object = [
{
@@ -113,7 +116,8 @@ class TestNiosPTRRecordModule(TestNiosModule):
"_ref": "record:ptr/ZG5zLm5ldHdvcmtfdmlldyQw:14.241.36.10.in-addr.arpa/default",
"ptrdname": "ansible.test.com",
"ipv4addr": "10.36.241.14",
- "extattrs": {}
+ "extattrs": {},
+ "view": "default"
}
]
@@ -121,7 +125,8 @@ class TestNiosPTRRecordModule(TestNiosModule):
"ipv4addr": {"ib_req": True},
"ptrdname": {"ib_req": True},
"comment": {},
- "extattrs": {}
+ "extattrs": {},
+ "view": {"ib_req": True}
}
wapi = self._get_wapi(test_object)
@@ -132,7 +137,7 @@ class TestNiosPTRRecordModule(TestNiosModule):
def test_nios_ptr_record_update_record_ptrdname(self):
self.module.params = {'provider': None, 'state': 'present', 'ptrdname': 'ansible.test.org',
- 'ipv4addr': '10.36.241.14', 'comment': 'comment', 'extattrs': None}
+ 'ipv4addr': '10.36.241.14', 'comment': 'comment', 'extattrs': None, 'view': 'default'}
test_object = [
{
@@ -140,7 +145,8 @@ class TestNiosPTRRecordModule(TestNiosModule):
"_ref": "record:ptr/ZG5zLm5ldHdvcmtfdmlldyQw:14.241.36.10.in-addr.arpa/default",
"ptrdname": "ansible.test.com",
"ipv4addr": "10.36.241.14",
- "extattrs": {}
+ "extattrs": {},
+ "view": "default"
}
]
@@ -148,7 +154,8 @@ class TestNiosPTRRecordModule(TestNiosModule):
"ipv4addr": {"ib_req": True},
"ptrdname": {"ib_req": True},
"comment": {},
- "extattrs": {}
+ "extattrs": {},
+ "view": {"ib_req": True}
}
wapi = self._get_wapi(test_object)
@@ -159,17 +166,19 @@ class TestNiosPTRRecordModule(TestNiosModule):
def test_nios_ptr6_record_create(self):
self.module.params = {'provider': None, 'state': 'present', 'ptrdname': 'ansible6.test.com',
- 'ipv6addr': '2002:8ac3:802d:1242:20d:60ff:fe38:6d16', 'comment': None, 'extattrs': None}
+ 'ipv6addr': '2002:8ac3:802d:1242:20d:60ff:fe38:6d16', 'comment': None, 'extattrs': None, 'view': 'default'}
test_object = None
test_spec = {"ipv6addr": {"ib_req": True},
"ptrdname": {"ib_req": True},
"comment": {},
- "extattrs": {}}
+ "extattrs": {},
+ "view": {"ib_req": True}}
wapi = self._get_wapi(test_object)
print("WAPI: ", wapi)
res = wapi.run('testobject', test_spec)
self.assertTrue(res['changed'])
- wapi.create_object.assert_called_once_with('testobject', {'ipv6addr': '2002:8ac3:802d:1242:20d:60ff:fe38:6d16', 'ptrdname': 'ansible6.test.com'})
+ wapi.create_object.assert_called_once_with('testobject', {'ipv6addr': '2002:8ac3:802d:1242:20d:60ff:fe38:6d16',
+ 'ptrdname': 'ansible6.test.com', 'view': 'default'})