Support full path templates (#26121)

This patch allows the iapp service module to support full path
templates instead of only relative templates
This commit is contained in:
Tim Rupp 2017-06-28 09:35:00 -07:00 committed by John R Barker
parent 04ac15f241
commit e7402e3d5b
2 changed files with 26 additions and 0 deletions

View file

@ -289,6 +289,8 @@ class Parameters(AnsibleF5Parameters):
return None return None
if self._values['template'].startswith("/" + self.partition): if self._values['template'].startswith("/" + self.partition):
return self._values['template'] return self._values['template']
elif self._values['template'].startswith("/"):
return self._values['template']
else: else:
return '/{0}/{1}'.format( return '/{0}/{1}'.format(
self.partition, self._values['template'] self.partition, self._values['template']

View file

@ -197,6 +197,30 @@ class TestParameters(unittest.TestCase):
assert p.tables[0]['rows'][0]['row'] == ['12.12.12.12', '80', '0'] assert p.tables[0]['rows'][0]['row'] == ['12.12.12.12', '80', '0']
assert p.tables[0]['rows'][1]['row'] == ['13.13.13.13', '443', '10'] assert p.tables[0]['rows'][1]['row'] == ['13.13.13.13', '443', '10']
def test_module_template_same_partition(self):
args = dict(
template='foo',
partition='bar'
)
p = Parameters(args)
assert p.template == '/bar/foo'
def test_module_template_same_partition_full_path(self):
args = dict(
template='/bar/foo',
partition='bar'
)
p = Parameters(args)
assert p.template == '/bar/foo'
def test_module_template_different_partition_full_path(self):
args = dict(
template='/Common/foo',
partition='bar'
)
p = Parameters(args)
assert p.template == '/Common/foo'
@patch('ansible.module_utils.f5_utils.AnsibleF5Client._get_mgmt_root', @patch('ansible.module_utils.f5_utils.AnsibleF5Client._get_mgmt_root',
return_value=True) return_value=True)