Merge pull request #11398 from resmo/for-ansible
cloudstack: fixes and updates
This commit is contained in:
commit
af49944ab2
2 changed files with 24 additions and 6 deletions
|
@ -77,6 +77,14 @@ class AnsibleCloudStack:
|
||||||
else:
|
else:
|
||||||
self.cs = CloudStack(**read_config())
|
self.cs = CloudStack(**read_config())
|
||||||
|
|
||||||
|
|
||||||
|
def get_or_fallback(self, key=None, fallback_key=None):
|
||||||
|
value = self.module.params.get(key)
|
||||||
|
if not value:
|
||||||
|
value = self.module.params.get(fallback_key)
|
||||||
|
return value
|
||||||
|
|
||||||
|
|
||||||
# TODO: for backward compatibility only, remove if not used anymore
|
# TODO: for backward compatibility only, remove if not used anymore
|
||||||
def _has_changed(self, want_dict, current_dict, only_keys=None):
|
def _has_changed(self, want_dict, current_dict, only_keys=None):
|
||||||
return self.has_changed(want_dict=want_dict, current_dict=current_dict, only_keys=only_keys)
|
return self.has_changed(want_dict=want_dict, current_dict=current_dict, only_keys=only_keys)
|
||||||
|
@ -266,12 +274,13 @@ class AnsibleCloudStack:
|
||||||
return None
|
return None
|
||||||
|
|
||||||
args = {}
|
args = {}
|
||||||
args['name'] = domain
|
|
||||||
args['listall'] = True
|
args['listall'] = True
|
||||||
domains = self.cs.listDomains(**args)
|
domains = self.cs.listDomains(**args)
|
||||||
if domains:
|
if domains:
|
||||||
self.domain = domains['domain'][0]
|
for d in domains['domain']:
|
||||||
return self._get_by_key(key, self.domain)
|
if d['path'].lower() in [ domain.lower(), "root/" + domain.lower(), "root" + domain.lower() ]:
|
||||||
|
self.domain = d
|
||||||
|
return self._get_by_key(key, self.domain)
|
||||||
self.module.fail_json(msg="Domain '%s' not found" % domain)
|
self.module.fail_json(msg="Domain '%s' not found" % domain)
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -77,6 +77,14 @@ class AnsibleCloudStack:
|
||||||
else:
|
else:
|
||||||
self.cs = CloudStack(**read_config())
|
self.cs = CloudStack(**read_config())
|
||||||
|
|
||||||
|
|
||||||
|
def get_or_fallback(self, key=None, fallback_key=None):
|
||||||
|
value = self.module.params.get(key)
|
||||||
|
if not value:
|
||||||
|
value = self.module.params.get(fallback_key)
|
||||||
|
return value
|
||||||
|
|
||||||
|
|
||||||
# TODO: for backward compatibility only, remove if not used anymore
|
# TODO: for backward compatibility only, remove if not used anymore
|
||||||
def _has_changed(self, want_dict, current_dict, only_keys=None):
|
def _has_changed(self, want_dict, current_dict, only_keys=None):
|
||||||
return self.has_changed(want_dict=want_dict, current_dict=current_dict, only_keys=only_keys)
|
return self.has_changed(want_dict=want_dict, current_dict=current_dict, only_keys=only_keys)
|
||||||
|
@ -266,12 +274,13 @@ class AnsibleCloudStack:
|
||||||
return None
|
return None
|
||||||
|
|
||||||
args = {}
|
args = {}
|
||||||
args['name'] = domain
|
|
||||||
args['listall'] = True
|
args['listall'] = True
|
||||||
domains = self.cs.listDomains(**args)
|
domains = self.cs.listDomains(**args)
|
||||||
if domains:
|
if domains:
|
||||||
self.domain = domains['domain'][0]
|
for d in domains['domain']:
|
||||||
return self._get_by_key(key, self.domain)
|
if d['path'].lower() in [ domain.lower(), "root/" + domain.lower(), "root" + domain.lower() ]:
|
||||||
|
self.domain = d
|
||||||
|
return self._get_by_key(key, self.domain)
|
||||||
self.module.fail_json(msg="Domain '%s' not found" % domain)
|
self.module.fail_json(msg="Domain '%s' not found" % domain)
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue