summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrian Coca <bcoca@ansible.com>2015-10-12 09:37:47 -0400
committerBrian Coca <bcoca@ansible.com>2015-10-12 09:37:47 -0400
commit50372eecc9600024a93e23238d6d1524356d7338 (patch)
treeffd21252b64d1a80bc353d5a4b45b64014ff73f6
parenteb60ce1b6e4a02cdb4ff2784d7140a59ad27554e (diff)
parentab3239ecd7d50a55fc48df1b8bfd72c384fc6fd7 (diff)
downloadansible-50372eecc9600024a93e23238d6d1524356d7338.tar.gz
Merge pull request #12455 from privateip/devel
added methods for retrieving vapp and vm
-rw-r--r--lib/ansible/module_utils/vca.py14
1 files changed, 14 insertions, 0 deletions
diff --git a/lib/ansible/module_utils/vca.py b/lib/ansible/module_utils/vca.py
index b6085354e6..bc5e1aba2a 100644
--- a/lib/ansible/module_utils/vca.py
+++ b/lib/ansible/module_utils/vca.py
@@ -91,6 +91,20 @@ class VcaAnsibleModule(AnsibleModule):
self._vdc = _vdc
return _vdc
+ def get_vapp(self, vapp_name):
+ vapp = self.vca.get_vapp(self.vdc, vapp_name)
+ if not vapp:
+ raise VcaError('vca instance has no vapp named %s' % vapp_name)
+ return vapp
+
+ def get_vm(self, vapp_name, vm_name):
+ vapp = self.get_vapp(vapp_name)
+ vms = [vm for vm in children.get_Vm() if vm.name == vm_name]
+ try:
+ return vms[0]
+ except IndexError:
+ raise VcaError('vapp has no vm named %s' % vm_name)
+
def create_instance(self):
service_type = self.params.get('service_type', DEFAULT_SERVICE_TYPE)
host = self.params.get('host', LOGIN_HOST.get('service_type'))