Commit graph

107 commits

Author SHA1 Message Date
Gonéri Le Bouder
5005c353ef VMware: vcenter_folder: print full path of the new folder (#55237)
Print the full path of the freshly created folder in the output string.
2019-05-23 16:21:22 +05:30
Abhijeet Kasurde
459776eb82
VMware: Add folder option for vmware_dvswitch (#56707)
* Added folder param
* Mark datacenter as optional parameter
* Updated docs
* Updated tests

Fixes: #54986

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2019-05-22 11:40:09 +05:30
Gonéri Le Bouder
cf78759f5b vmware_vm_facts: fix the support with regular ESXi
Ensure the module still work with the ESXi where CustomFieldsManager
does not exist.

From: https://www.vmware.com/support/developer/converter-sdk/conv60_apireference/vim.CustomFieldsManager.html

    The CustomFieldsManager object is used to add and remove custom fields to
    managed entities.
    The custom fields values set on managed entities are available through the
    customValue property and through the summary objects for VirtualMachine
    and HostSystem. They are not available directly through this managed object.
    This functionality is only available through VirtualCenter.

Fixes: #56071
2019-05-13 17:25:16 -04:00
Abhijeet Kasurde
7e6be4e634
VMware: vmware_guest_disk support for use_instance_uuid (#56107)
All vmware_guest_* module support for use_instance_uuid from Ansible 2.8,
somehow vmware_guest_disk missed from this change.
This fix adds support for use_instance_uuid in vmware_guest_disk.

Fixes: #56021

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2019-05-11 11:58:13 +05:30
Gonéri Le Bouder
7a02c40bbc vmware: find_vmdk_file with trailing / (#55957)
With the example, the `file_result.folderPath` of the file
does not have any trailing '/'. `target_folder_path` is correctly
generated and equal: `[nfs_1] images`.
2019-05-10 11:49:03 +05:30
Abhijeet Kasurde
2007a79952
VMware: Add managed object id in VM facts (#53523)
Fixes: #53372

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2019-05-07 17:05:38 +05:30
Gonéri Le Bouder
23e63c9237 vmware: check the SSL certification
If `validate_certs` is enable, we now validate the server SSL
certificate.
2019-05-06 09:15:16 -04:00
Abhijeet Kasurde
6ff4547489 VMware: get_all_host_objs accepts list of host (#55146)
vmware_portgroup accepts list of hosts, get_all_host_objs API modified
to accept list of hosts.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2019-04-12 15:35:35 -07:00
Abhijeet Kasurde
70f6cdb814
VMware: add cluster name in facts (#53056)
Fixes: #45280

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2019-03-06 10:15:26 +05:30
James E. King III
f2495ef0d3 Add ability to get vmware_guest_facts using vsphere schema output (#47446) 2019-02-25 06:03:40 -05:00
Jake Hill
e18d5ea8b3 VMware: Add support in VMWare modules for BIOS and instance UUID's (#44399)
* Add support for changing UUID type referenced
* Update all appropriate VMware modules to include UUID type
* Add integration test for filtering on instance UUID
2019-02-25 14:07:07 +05:30
Diane Wang
4f8cd6bf96 VMware: add new module vmware_export_ovf (#50589) 2019-02-25 09:29:45 +05:30
Jordan Borean
a39c4ad464
Final round of moving modules to new import error msg (#51852)
* Final round of moving modules to new import error msg

* readd URL to jenkins install guide

* fix unit tests
2019-02-08 10:07:01 +10:00
Abhijeet Kasurde
d37386d2c7
VMware: fix path for hw_files (#49116)
Fixes: #48929

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2019-02-04 12:02:55 +05:30
mrmagooey
8eff4cae10 VMware: vmware_guest - allow existing vmdk files to be attached to guest (#45953) 2019-01-30 15:35:24 +01:00
Toshio Kuratomi
175f3b51e5 Ensure that current uses of BaseException are required
* In some cases, it appears that Exception should have been used instead
  as there's no need to catch sys.exit KeyboardInterrupt and similar.
* In a few cases, it appears that BaseException is used because
  a library we depend on calls sys.exit() contrary to good coding
  design.  Comment those so that we know that those have been audited
  and found to be correct and change to use (Exception, SystemExit)
  instead.
2018-12-16 15:03:19 -08:00
Abhijeet Kasurde
1b04571ea0
VMware: Fix module usages in module_utils (#49421)
* VMware: Fix module usages in module_utils
* Skip test for Python 2.6 as SSL context is not available in Python 2.6

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-12-04 10:11:29 +05:30
Abhijeet Kasurde
8cd395f595 VMware: Refactor vmware_cluster (#37072)
* Update cluster logic
* Refactor code
* Documentation update

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-11-14 04:36:48 -05:00
Abhijeet Kasurde
e7c83d6aa9
VMware: correct logic to pass ESXi SSL thumbprint (#47600)
Due to refactoring of task_error and wait_for_task method,
SSL thumbprint was lost in error message. This fixes the
retry mechanism of AddHost task.

Fixes: #47563

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-10-29 20:59:11 +05:30
Philip Bove
055ee048ce VMware: Fixed vmware fact gathering when no physical interfaces have IP Addresses (#42600)
* Changed vmware_guest_facts to accuretly reflect ip as displayed in vcenter
* fixed ipv6 check
2018-10-26 23:11:58 +05:30
Jim Gu
99ee30768a VMware: Avoid misleading PyVmomi error if requests import fails (#47313)
* Avoid misleading PyVmomi error if requests import fails

Requests is imported by the VMware module_utils as an external
dependency; however, because it is in a try/catch block containing the
imports for PyVmomi, if requests fails to import properly, Ansible will
instead complain about PyVmomi not being installed.

By moving the import outside of the try/catch block, if requests fails
to import, an error like the following will be returned:

    ImportError: No module named requests

This should result in less confusion.

* catch requests ImportError
2018-10-26 12:40:25 +05:30
Abhijeet Kasurde
ebeb788117
VMware: Provide facility to specify path for template (#38031)
When multiple virtual machines or templates are found in environment,
module needs folder path. This fix adds facility to specify folder path
for template or virtual machine if multiples are found.

Fixes: #37087

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-10-15 14:59:48 +05:30
Harald Albers
796d8b5dc8 VMware: Fix wait_for_task backoff behavior (#45429)
Signed-off-by: Harald Albers <github@albersweb.de>
2018-09-11 09:58:53 +05:30
Abhijeet Kasurde
d41e568a4d
VMware: use UUID to find templates and VMs (#45208)
This fix adds functionality to find the templates or VMs for cloning
operations.

Fixes: #45081

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-09-10 12:45:47 +05:30
Harald Albers
d61b4492cf VMware: Fix timeout detection in vmware_deploy_ovf module (#45159)
Signed-off-by: Harald Albers <github@albersweb.de>
2018-09-10 12:27:40 +05:30
Pieter Avonts
1a810f8f11 VMware: Rewrite get_resource_pool method for correct resource_pool selection (#39792)
* rewrite get_resource_pool method for correct resource_pool selection
* only keep name if path is given for cluster, esxi_hostname or resource_pool
* Revert "only keep name if path is given for cluster, esxi_hostname or resource_pool"
* This reverts commit 50293ec763c024b0eaceac5d775ccc0ad3ff8bd7.
* if the name argument contains a path, only use the last part for matching
* remove path from cluster argument in tests
* remove find_objs in favour of reusing find_obj with an extra folder argument
* fix find_obj ignoring first if name is not given
2018-09-07 18:23:26 +05:30
Armin Ranjbar Daemi
778b789c84 VMware: New module vmware_guest_vnc (#36282) 2018-09-07 16:00:37 +05:30
Abhijeet Kasurde
aefe963483
VMware: handle special characters in datacenter name (#42922)
This fix handles special characters in VMware objects

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-07-27 12:17:10 +05:30
Abhijeet Kasurde
dd73bae51a VMware: handle indexError for snapshot details (#42575)
Fixes: #42539

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-07-27 00:55:21 -04:00
Gregory DEPUILLE
0d1c06814f vmware_vmotion: added storage vmotion capabilities. (#21421)
This fix adds vmotion capabilities to vmware_vmotion across different datastores and different hostsystem.
2018-07-17 20:43:30 +05:30
Abhijeet Kasurde
e8c90b47eb
VMware: support for 2.6 and sslContext (#42237)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-07-17 08:00:33 +05:30
Abhijeet Kasurde
b5c18ea2bd
VMware: Add timeout in wait_for_task (#39596)
* VMware: Add timeout in wait_for_task
* Added exponential backoff algorithm
* code review comments

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-06-20 11:23:58 +05:30
Matt Martz
36c8441c6d New module vmware_deploy_ovf (#30309)
* First pass at vmware_deploy_ovf functionality
* Add OVA file support, re-structure code
* Move some useful functions to module_utils.vmware, and perform a little DRY too
* Better handling of errors during spec validation and import
* Properly calculate the lease progress percentage for all vmdk files
* Make warnings and errors a little better
* Add an allow_duplicates argument, that defaults to true, to allow users to have name based idempotency
* Add fail_on_spec_warnings to cause the module to treat warnings as errors
* Support non-vmdk uploads
* Add ova alias for ovf
* Rename vmdk_post_url to device_upload_url so it does not sound to specific to VMDK files
* Safer handling of * hostname in urls
* Add default Content-Type, remove unused headers var
* Add deploymentOptions and propertyMapping functionalities
* Add basic check_mode support
* Add vmware_deploy_ovf to list of use-argspec-type-path ignores
* Update version_added and fix path for use-argspec-type-path
* Add configurable folder
* Doc changes
2018-05-29 21:38:43 +05:30
Deric Crago
3744b69a40 simplified DistributedVirtualSwitch namespacing (#40191) 2018-05-22 15:38:31 +05:30
Abhijeet Kasurde
d70b3b4661
VMware: New module: vmware_tag (#37261)
This module is based on vSphere REST API. This module allows
user to manage various tags and their association with
categories. This fix also adds vCenter REST client library which can
be re-used for other REST based modules.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-05-07 16:30:16 +05:30
Abhijeet Kasurde
0d29826e52 VMware: Refactor vmware_host_facts (#39273)
* Updated documentation
* Error handling in find_obj
* Updated return facts example

Fixes: #39265

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-05-07 02:34:14 -04:00
Abhijeet Kasurde
ed141f1eab
VMware: Refactor vmware_vswitch (#36091)
* Update documentation
* Update logic
* Added idempotency
* Added Error handling

Fixes: #36030

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-04-28 16:31:45 +05:30
Abhijeet Kasurde
57a009d4c7
VMware: vmware.py refactor (#36976)
* Remove unused `find_entity_child_by_path` API
* Remove unused `fetch_file_from_guest` API as this has separate module
  vmware_guest_file_operation
* Remove unused `push_file_to_guest` API as this has separate module
  vmware_guest_file_operation
* Refactor exception variables
* Change GPL License boilerplate to one-liner

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-04-28 16:11:21 +05:30
Tim Steinbach
f61172e6c7 vmware: Add portgroup_portkey and portgroup_key (#38958)
* VMware: apply correct value for datacenter in TC

Signed-off-by: Tim Steinbach <tim@nequissimus.com>
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-04-23 14:04:35 +05:30
Abhijeet Kasurde
efc3f4f824 VMware: handle permission denied while reading facts (#37163)
This fix adds exception handling which is raised when user
does not have correct set of permissions/privileges to read virtual machine
facts especially host system configuration.

Fixes: #37056

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-04-17 05:18:07 -04:00
balonik
0cdba9ff70 add instanceUuid (also called PersistentId) in vmware utils (#37127) 2018-04-02 01:49:39 -04:00
Abhijeet Kasurde
4edcbeb62d
VMware: Gather facts when powerstate is specified (#37908)
This fix adds additional facts after VM powerstate management.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-03-28 00:19:33 +05:30
Abhijeet Kasurde
0ae7a0e88c
VMware: Use environment variable for connection (#37726)
This fix adds environment variables for connection in vmware_*
modules.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-03-21 13:31:24 -04:00
Abhijeet Kasurde
c25a42bef6 VMware: New module : vmware_datastore_cluster (#36365)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-03-08 23:44:15 -05:00
Abhijeet Kasurde
3a161fa157
VMware: new module : vmware_datastore_maintenancemode (#36436)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-03-02 23:35:53 +05:30
Abhijeet Kasurde
435649274b
VMware: Hardware version support (#36562)
This fix adds support for specifying hardware version for
virtual machine.

Fixes: #35831

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-02-26 13:21:43 +05:30
Jim Gu
b6d4fa1c96 Wait for VM state to reach poweredoff when state: shutdownguest (#31669)
This change adds the optional wait_for_state_change argument to the
vmware_guest, vmware_guest_powerstate module, which allows for module
completion to be blocked when using the shutdownguest state until the
VM has reached the poweredoff state.

Fixes: #28498

Signed-off-by: Jim Gu <heming.gu@mercurygate.com>
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-02-21 17:14:12 +05:30
Abhijeet Kasurde
542d27eee4
VMware: Make a common API for hostsystem params (#36314)
This fix adds a common API for getting host system managed object
from either cluster name or host system.

Fixes: #36010

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-02-19 14:00:09 +05:30
Abhijeet Kasurde
02b28d4584
VMware: Refactor vmware_vmkernel module (#35531)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-02-04 06:08:45 +05:30
Abhijeet Kasurde
8606bfde4f
VMware: vmware_guest template find (#35088)
This fix adds logic to find unique virtual machine template using name.

Fixes: #26669

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-01-29 21:39:50 +05:30