Bump minimum openstacksdk version when using os_network/dns_domain (#66952)

With the addition of [a], the minimum openstacksdk version needs to
be bumped to include [b], or the os_network module will return the
error:

TypeError: create_network() got an unexpected keyword argument 'dns_domain'

To handle this, we fail the module if the dns_domain argument is used
and the minimum openstacksdk version for that argument is not met.

[a] 6c74e29618
[b] a3e846e2b9

Fixes: #64495
Fixes: #64841
pull/67297/head
Jesse Pretorius 6 years ago committed by GitHub
parent 31e348409f
commit 5d406cffca
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -0,0 +1,3 @@
bugfixes:
- bump the minimum openstacksdk version when os_network
uses the dns_domain argument

@ -129,7 +129,7 @@ network:
type: int
sample: 0
dns_domain:
description: The DNS domain of a network resource.
description: The DNS domain of a network resource. Requires openstacksdk>=0.29.
type: str
sample: "sample.openstack.org."
admin_state_up:
@ -197,12 +197,18 @@ def main():
provider_physical_network = module.params['provider_physical_network']
provider_network_type = module.params['provider_network_type']
provider_segmentation_id = module.params['provider_segmentation_id']
project = module.params.get('project')
port_security_enabled = module.params.get('port_security_enabled')
mtu = module.params.get('mtu')
dns_domain = module.params.get('dns_domain')
project = module.params['project']
sdk, cloud = openstack_cloud_from_module(module)
net_create_kwargs = {
'port_security_enabled': module.params['port_security_enabled'],
'mtu_size': module.params['mtu']
}
if module.params['dns_domain'] is not None:
sdk, cloud = openstack_cloud_from_module(module, min_version='0.29.0')
net_create_kwargs['dns_domain'] = module.params['dns_domain']
else:
sdk, cloud = openstack_cloud_from_module(module)
try:
if project is not None:
proj = cloud.get_project(project)
@ -228,13 +234,11 @@ def main():
if project_id is not None:
net = cloud.create_network(name, shared, admin_state_up,
external, provider, project_id,
port_security_enabled=port_security_enabled,
mtu_size=mtu, dns_domain=dns_domain)
**net_create_kwargs)
else:
net = cloud.create_network(name, shared, admin_state_up,
external, provider,
port_security_enabled=port_security_enabled,
mtu_size=mtu, dns_domain=dns_domain)
**net_create_kwargs)
changed = True
else:
changed = False

Loading…
Cancel
Save