mirror of
https://github.com/ansible-collections/community.general.git
synced 2025-04-23 10:51:24 -07:00
cloudstack: add check mode tests (#24908)
* cloudstack: test: cs_network_acl: add check_mode tests * cloudstack: test: cs_pod: add check_mode tests * cloudstack: test: cs_user: add check_mode tests * cloudstack: test: cs_sshkeypair: add check_mode tests * cloudstack: test: cs_project: add check_mode tests * cloudstack: test: cs_vpc: add check_mode tests * cloudstack: test: cs_vpn_gateway: add check_mode tests * cloudstack: test: cs_volume: add check_mode tests * cloudstack: test: cs_vmsnapshot: add check_mode tests * cloudstack: test: cs_account: add check_mode tests * cloudstack: test: cs_affinitygroup: add check_mode tests * cloudstack: test: cs_cluster: add check_mode tests * cloudstack: test: cs_domain: add check_mode tests * cloudstack: test: cs_instancegroup: add check_mode tests * cloudstack: test: cs_iso: add check_mode tests * cloudstack: test: cs_loadbalancer_rule: add check_mode tests * cloudstack: test: cs_portforward: add check_mode tests * cloudstack: test: cs_resourcelimit: add check_mode tests * cloudstack: test: cs_securitygroup: add check_mode tests * cloudstack: test: cs_securitygroup_rule: add check_mode tests * cloudstack: test: cs_configuration: add check_mode tests * cloudstack: test: cs_firewall: add check_mode tests * cloudstack: test: cs_instance: add check_mode tests * cloudstack: query current tags from API Fixes unexpected tags returned in check mode.
This commit is contained in:
parent
2af5556901
commit
d5b04aa1f1
32 changed files with 1838 additions and 33 deletions
|
@ -507,9 +507,17 @@ class AnsibleCloudStack(object):
|
|||
return self._get_by_key(key, self.domain)
|
||||
self.fail_json(msg="Domain '%s' not found" % domain)
|
||||
|
||||
def get_tags(self, resource=None):
|
||||
def query_tags(self, resource, resource_type):
|
||||
args = {
|
||||
'resourceids': resource['id'],
|
||||
'resourcetype': resource_type,
|
||||
}
|
||||
tags = self.cs.listTags(**args)
|
||||
return self.get_tags(resource=tags, key='tag')
|
||||
|
||||
def get_tags(self, resource=None, key='tags'):
|
||||
existing_tags = []
|
||||
for tag in resource.get('tags', []):
|
||||
for tag in resource.get(key) or []:
|
||||
existing_tags.append({'key': tag['key'], 'value': tag['value']})
|
||||
return existing_tags
|
||||
|
||||
|
@ -545,7 +553,7 @@ class AnsibleCloudStack(object):
|
|||
if tags is not None:
|
||||
self._process_tags(resource, resource_type, self._tags_that_should_not_exist(resource, tags), operation="delete")
|
||||
self._process_tags(resource, resource_type, self._tags_that_should_exist_or_be_updated(resource, tags))
|
||||
resource['tags'] = tags
|
||||
resource['tags'] = self.query_tags(resource=resource, resource_type=resource_type)
|
||||
return resource
|
||||
|
||||
def get_capabilities(self, key=None):
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue