Migrating subnets_info from AnsibleModule to OpenStackModule
Updated module, added "deprecated_names", Removed "ansible-deprecated-no-collection-name" for subnets_info for ansible 2.10, 2.11 Change-Id: I5590976964543188518200f2b31a1603eb30f39b
This commit is contained in:
parent
d36ac1f125
commit
d5c403cded
@ -129,34 +129,32 @@ openstack_subnets:
|
||||
elements: dict
|
||||
'''
|
||||
|
||||
from ansible.module_utils.basic import AnsibleModule
|
||||
from ansible_collections.openstack.cloud.plugins.module_utils.openstack import openstack_full_argument_spec, openstack_cloud_from_module
|
||||
from ansible_collections.openstack.cloud.plugins.module_utils.openstack import OpenStackModule
|
||||
|
||||
|
||||
def main():
|
||||
class SubnetInfoModule(OpenStackModule):
|
||||
|
||||
argument_spec = openstack_full_argument_spec(
|
||||
deprecated_names = ('subnets_facts', 'openstack.cloud.subnets_facts')
|
||||
|
||||
argument_spec = dict(
|
||||
name=dict(required=False, default=None, aliases=['subnet']),
|
||||
filters=dict(required=False, type='dict', default=None)
|
||||
)
|
||||
module = AnsibleModule(argument_spec)
|
||||
is_old_facts = module._name == 'openstack.cloud.subnets_facts'
|
||||
if is_old_facts:
|
||||
module.deprecate("The 'openstack.cloud.subnets_facts' module has been renamed to 'openstack.cloud.subnets_info', "
|
||||
"and the renamed one no longer returns ansible_facts", version='2.13')
|
||||
|
||||
sdk, cloud = openstack_cloud_from_module(module)
|
||||
try:
|
||||
subnets = cloud.search_subnets(module.params['name'],
|
||||
module.params['filters'])
|
||||
if is_old_facts:
|
||||
module.exit_json(changed=False, ansible_facts=dict(
|
||||
openstack_subnets=subnets))
|
||||
else:
|
||||
module.exit_json(changed=False, openstack_subnets=subnets)
|
||||
def run(self):
|
||||
kwargs = self.check_versioned(
|
||||
filters=self.params['filters']
|
||||
)
|
||||
if self.params['name']:
|
||||
kwargs['name_or_id'] = self.params['name']
|
||||
subnets = self.conn.search_subnets(**kwargs)
|
||||
|
||||
except sdk.exceptions.OpenStackCloudException as e:
|
||||
module.fail_json(msg=str(e))
|
||||
self.exit(changed=False, openstack_subnets=subnets)
|
||||
|
||||
|
||||
def main():
|
||||
module = SubnetInfoModule()
|
||||
module()
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
|
@ -4,5 +4,4 @@ plugins/modules/identity_user_info.py pylint:ansible-deprecated-no-collection-na
|
||||
plugins/modules/image_info.py pylint:ansible-deprecated-no-collection-name
|
||||
plugins/modules/port_info.py pylint:ansible-deprecated-no-collection-name
|
||||
plugins/modules/project_info.py pylint:ansible-deprecated-no-collection-name
|
||||
plugins/modules/subnets_info.py pylint:ansible-deprecated-no-collection-name
|
||||
plugins/module_utils/openstack.py pylint:ansible-deprecated-no-collection-name
|
||||
|
@ -4,5 +4,4 @@ plugins/modules/identity_user_info.py pylint:ansible-deprecated-no-collection-na
|
||||
plugins/modules/image_info.py pylint:ansible-deprecated-no-collection-name
|
||||
plugins/modules/port_info.py pylint:ansible-deprecated-no-collection-name
|
||||
plugins/modules/project_info.py pylint:ansible-deprecated-no-collection-name
|
||||
plugins/modules/subnets_info.py pylint:ansible-deprecated-no-collection-name
|
||||
plugins/module_utils/openstack.py pylint:ansible-deprecated-no-collection-name
|
||||
|
Loading…
x
Reference in New Issue
Block a user