Commit Graph

482 Commits (4d3d8dd60f91a1c68bca55824fb88a72bf8eb718)

Author SHA1 Message Date
Dag Wieers 858d10a91a
Clean up VMware BOTMETA and author/license info (#36873)
* Clean up vmware BOTMETA

This removes everything that's already part of the module docs. So
basically the BOTMETA file only extends the information from the module.

* Updated author information and copyright statement
2018-03-02 01:07:17 +01:00
Pierrick Caillon 808f45db55 Allow configuration of manual mac address (#35504) 2018-03-01 20:24:40 +05:30
Abhijeet Kasurde 0694aca2a0
VMware: refactor configure disk logic (#36617)
This fix corrects logic related to disk parameters.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-03-01 09:36:54 +05:30
Abhijeet Kasurde 8d49bb6eee
VMware: new module: vmware_host_capability_facts (#36497)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-02-28 09:54:52 +05:30
Abhijeet Kasurde d94a1ef4cc
VMware: refactor vmware_datastore_facts (#36423)
This fix adds datastore cluster details about datastore in returning
facts. Updated documentation and tests.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-02-26 13:23:22 +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
gratuxri d31d981aa5 Updated vmware URL for guest_ids (#36511) 2018-02-22 12:17:11 +05:30
John R Barker 5d0ed38e3a
Fixup VMware module docs issues (#36409)
Fix various argspec vs documentation issue
2018-02-21 15:20:42 +00:00
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
goshkis abb956d9eb vApp properties support (#32579)
* Adding support for vApp properties.
* vm specification updated only if changes have to be applied. I.e. subsequent updates with the same data will not trigger changed state
* Auxiliary variables renamed, hope this makes the code more readable
* Integration tests changed - re-adding the same properties test not implemented, but tested on real vCenter deployment
* fixing documentation "version_added" for the feature
* Addressing reviewers comments #2:
* documentation updated with the only meaningful value for "option" attribute - "remove"
* Fixed improperly handled case when user requested "add" operation for existent property
* vApp configuration is updated only with properties that contains changes, not with all properties requested by user
2018-02-21 11:59:13 +05:30
Abhijeet Kasurde 77b903bd85
VMware: Add missing state param in argument spec (#36339)
This fix adds missing argument parameter called 'state'
and its documentation.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-02-21 11:32:47 +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 4d18586fc9
VMware: Refactor vmware_guest_tools_wait (#36098)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-02-19 13:53:38 +05:30
Abhijeet Kasurde 3ecf2d5ba2
VMware: New module: vmware_guest_snapshot_facts (#36002)
This module gathers facts about VM's snapshots.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-02-16 11:52:03 +05:30
Abhijeet Kasurde 55d117458a
VMware: New module: vmware_guest_disk_facts (#36026)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-02-16 10:46:35 +05:30
Abhijeet Kasurde a377302d6b
VMware: Fix DVPG idempotency issue (#35837)
This fixes, cloning operation where template or existing VM
does not have network or DVPG. Also, adds some strict type checking in
network parameters.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-02-16 10:32:27 +05:30
Abhijeet Kasurde 429c63510a
VMware: Minor typo in vmware_host_dns_facts (#36018)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-02-12 10:24:06 +05:30
Abhijeet Kasurde 52f79fa5a4
VMware: Additional check for RootSnapshot (#36001)
This fix adds an additional check if there is no snapshot available
in VM. `rootSnapshotList` is None, if no snapshot is taken.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-02-10 21:11:11 +05:30
Abhijeet Kasurde 4ac92c97a3 VMware: Detect SDRS for datastore cluster (#35644)
This fix adds a fallback mechanism where Storage Datacluster
is not enabled with SDRS. If user has Storage Datacluster without SDRS
then we will not get any datastore recommendation. This will fallback to
normal datastore selection method.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-02-06 06:34:53 -05:00
Abhijeet Kasurde 635036fb62
VMware: Add new module : vmware_host_firewall_manager (#35596)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-02-06 08:29:56 +05:30
Abhijeet Kasurde c487969abf VMware: refactor vmware_cfg_backup (#35695)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-02-05 14:42:49 -05:00
Abhijeet Kasurde c33b02f71a
VMware: add new module vmware_vmkernel_facts (#35535)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-02-05 23:50:48 +05:30
Abhijeet Kasurde e9e8151c6d
VMware: add new module vmware_host_dns_facts (#35708)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-02-05 23:42:47 +05:30
Abhijeet Kasurde 904bd34111
VMware: add new module : vmware_host_lockdown (#35715)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-02-05 23:09:04 +05:30
Abhijeet Kasurde defff8ceb4
VMware: add new module : vcenter_folder (#35608)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-02-05 22:31:58 +05:30
Abhijeet Kasurde 8428f13bc1
VMware: add new module vmware_host_firewall_facts (#35467)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-02-05 22:24:28 +05:30
Abhijeet Kasurde 68de5791a3 VMware: vmware_guest_file_operation refactor (#35560)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-02-05 11:51:08 -05:00
Abhijeet Kasurde 02111bc6c8 VMware: Fix regression in vmware_portgroup (#35700)
This fix corrects the regression introduced by refactor commit in
vmware_portgroup module.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-02-05 11:19:02 -05:00
Abhijeet Kasurde c070d74080
VMware: Documentation cleanup - vmware_guest (#35548)
Partially fixes: #35295

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-02-05 14:34:00 +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 367258507a
VMware: Provide verbose message about non-existent VM (#35682)
This fix adds a verbose message about non-existent VM when specified
with operation, due to idempotency we can not detect correct state.

Fixes: #27384

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-02-04 05:23:24 +05:30
Abhijeet Kasurde d7d9e40dd1
VMware: Deprecate vsphere_guest module (#35648)
This change deprecates vsphere_guest in favor of vmware_guest and other
related modules.

The major reasons behind deprecation are -

- Pysphere - Unofficial Python bindings of vCenter deprecated in the year 2013.
- VMware provides official Python bindings for vCenter, which is used in vmware_guest.
- vcsim - simulator used in integration testing of vmware module does not support PySphere
  APIs, which makes it more difficult to test vsphere_guest.

Please see [deprecation plan](https://github.com/ansible/community/wiki/VMware%3A-vsphere_guest_deprecation)

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-02-02 20:03:57 +05:30
Ludovic Rivallain fe57285f9a vmware: Add new module 'vmware_datastore_host' (#35004)
* vmware: Add new module 'vmware_datastore_host'

Signed-off-by: Ludovic Rivallain <ludovic.rivallain@gmail.com>
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-02-02 18:16:10 +05:30
balonik 25a83a4ac8 Make vmware_guest always get a resource pool (#34995) 2018-02-02 14:44:15 +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
Abhijeet Kasurde cb96f8a250 VMware: refactor vmware_dvs_host (#35440)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-01-29 07:56:39 -05:00
Abhijeet Kasurde aa736c6944
VMware: add new module: vmware_host_acceptance (#35040)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-01-29 14:30:57 +05:30
Abhijeet Kasurde aac6d282e5
VMware: Add new module - vmware_vm_vm_drs_rule (#34177)
This adds a new module called vmware_vm_vm_drs_rule. This module add
affinity/antiaffinity rule for VM-VM in given cluster.

Fixes: #32109

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-01-29 09:36:57 +05:30
Abhijeet Kasurde 8549482482
VMware: add new module: vmware_host_package_facts (#35036)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-01-29 09:21:34 +05:30
Abhijeet Kasurde 3605c19377 VMware: return facts depending upon type of VM (#35419)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-01-28 16:29:40 -05:00
Abhijeet Kasurde 857d0fd62e
VMware: add new module: vmware_host_vmnic_facts (#34984)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-01-28 21:34:45 +05:30
Abhijeet Kasurde c96bad461f VMware: Fix dvs idempotency issue (#35389)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-01-26 16:23:47 -05:00
Abhijeet Kasurde 1f544ed6cc
VMware: Add new module : vmware_drs_rule_facts (#35337)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-01-25 16:38:07 +05:30
Abhijeet Kasurde 013190c27b VMware: Add support for datastore cluster (#35230)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-01-23 10:25:38 -05:00
Abhijeet Kasurde ca31e59b79 VMware: Add teaming policy for DVS Portgroup. (#35215)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-01-23 09:51:50 -05:00
Abhijeet Kasurde b24d502682 VMware: Refactor vmware_dvs_portgroup (#35193)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-01-22 13:15:18 -05:00
Abhijeet Kasurde c65842b9d8
Add check mode support in vmware_guest (#32858)
This fix adds check mode support in vmware_guest

Fixes: #32439

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-01-22 21:16:19 +05:30
Abhijeet Kasurde 912729b6a7
VMware: Check if VM is poweredoff before destroy (#35151)
This fix checks if VM is poweredoff before it can be destroyed.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-01-22 20:17:11 +05:30
Abhijeet Kasurde 04bee050ac
VMware: minor correction in documentation. (#35124)
Fixes: #27176

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-01-20 16:39:55 +05:30
Abhijeet Kasurde 87f2893481
VMware: Get virtual machine object using property (#33525)
This fixes get_vm method to use propertyCollector which
can efficiently find the virtual machine from given VMware
infrastructure using only name.

* VMware: Refactor vmware_guest module
* Add nested paths of datacenter
* Add tchernomax suggestions

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-01-19 09:50:20 +05:30
Abhijeet Kasurde cf88bfdbbf VMware: Refactor vmware_maintenancemode module (#35000)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-01-18 04:40:16 -05:00
Abhijeet Kasurde bf2ce55ca6
VMware: Add new module: vmware_host_config_manager (#34627)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-01-18 10:00:22 +05:30
Abhijeet Kasurde 4ba7b005f5
VMware: add new module: vmware_host_ntp (#34730)
This module manages NTP configuration for given ESXi server.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-01-17 18:53:13 +05:30
Abhijeet Kasurde 082654894a VMware: Add ESXi hostname in fact details (#34981)
Fixes: #33972

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-01-17 06:57:22 -05:00
Stéphane Travassac 8f80e6a302 VMware: basic files operations networkless (#33261)
This module adds ability manage file operations with vmware guest using vmware tools.
2018-01-17 09:48:12 +05:30
Abhijeet Kasurde 0a9489ef66
VMware: Add multiple IP Addresses in result (#34866)
This fix adds IPv4 and IPv6 addresses in virtual machine facts.

Fixes: #34792

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-01-16 16:31:38 +05:30
Abhijeet Kasurde eca3fcd214
VMware: Add new module: vmware_host_service_manager (#34862)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-01-16 09:51:34 +05:30
Abhijeet Kasurde 82a0253059
VMware: Add new module: vmware_host_service_facts (#34731)
This adds module to gather facts about VMware host service facts.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-01-12 22:32:10 +05:30
Abhijeet Kasurde eabd7eafad VMware: Refactor vmware_host module (#33916)
This fix refactor vmware_host module to use PyVmomi.
Also, handle SSLVerifyFault exception to get hostsystem's certificate
thumbprint.

Fixes: #20819

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-01-12 11:30:28 -05:00
Abhijeet Kasurde 2b3b689616
vmware: Add new module 'vmware_host_config_facts' (#34570)
This adds a new module called 'vmware_host_config_facts' which
gathers facts about advanced configuration informantion about ESXi host or all
ESXi hosts from given cluster.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-01-11 13:40:37 +05:30
reversecipher 7fbe19c047 vmware_guest: fix dvs idempotency issue (#34208)
* vmware_guest: fix dvs idempotency issue

* Rewrite VDS section

* Fix PEP 8 error
2018-01-10 17:57:08 -05:00
Abhijeet Kasurde 63536944a4 VMware: Add schedule datetime for powerstate (#34652)
This fix adds an user parameter for scheduled powerstate management of
virtual machines.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-01-10 17:49:05 -05:00
Abhijeet Kasurde dcc1355d54
VMware: new module - vmware_local_role_manager (#33372)
This fix adds new module for managing various roles in
local ESXi server. Also, adds integration tests for this change.

Fixes: #27899

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-01-04 15:53:58 +05:30
Abhijeet Kasurde 9879aa0382
VMware: Add support for resource allocation info (#33990)
This fix adds support for Virtual Machine resource allocation
information. This information is related to limit and reserve CPU and Memory
of virtual machine.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-01-03 21:13:56 +05:30
Abhijeet Kasurde 8d5c8b252d
VMware: Add support for cpuHotRemoveEnabled (#33962)
This fix adds support for cpuHotRemoveEnabled in vmware_guest module.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-12-20 19:15:55 +05:30
Abhijeet Kasurde b5318e2c34
VMware: Add NIC configuration option (#33851)
This fix adds following configurable parameters to virtual network card
of virtual machine.
* WakeOnLanEnabled
* StartConnected
* AllowGuestControl

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-12-15 17:54:52 +05:30
Abhijeet Kasurde 29d3505cb4
VMware: check for ESXi server while creating user (#33061)
This fix check for ESXi server instance before proceeding
with managing local user. Also, adds integration tests for
this change.

Fixes: #32465

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-12-15 16:26:19 +05:30
Abhijeet Kasurde 31510259f6 VMware: Refactor vmware_portgroup (#33703)
Fix adds following:
* Documentation update
* Idempotency
* Remove Portgroup functionality

Fixes: #33666

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-12-15 05:14:05 -05:00
Abhijeet Kasurde 08a2338277
Add idempotency in snapshot creation (#28466)
Fix adds idempotent behavior while creating snapshot

Fixes: #24511

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-12-15 08:34:39 +05:30
Abhijeet Kasurde 4391f5c094
VMware: Handle No Permission exception while clone (#33806)
This fix adds exception handling for No Permission exception
raised while clone operation.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-12-14 19:13:23 +05:30
tchernomax a09fd80bba VMware: fix vmPathName on VM creation (#33315)
* VMware: fix vmPathName on VM creation
* vmware_guest: enable unit tests disk_type_d1_c1_f0
2017-12-14 18:41:09 +05:30
tchernomax 29bed12cdd vmware_host: add reconnect and add_or_reconnect states (#30582)
* vmware_host: add reconnect and add_or_reconnect states

Add "reconnect" and "add_or_reconnect" choices for "state".

* reconnect: reconnect an esxi to a vcenter (imply it is present).
* add_or_reconnect: do the same but add the esxi if absent.

Also:
* tag the cluster_name as required (because it is).
* tag esxi_username and esxi_password as not required because
    they aren't when the esxi isn't added.

* vmware_host: add + prepare/document integration tests

vmware_host module

Add integration test for the add part of "add_or_reconnect" state.

Prepare and document integration tests for the reconnect part
of "add_or_reconnect" state and "reconnect" and "absent" states.

Currently we can't test those states as ReconnectHost_Task (for
"reconnect") and EnterMaintenanceMode_Task (for "absent") aren't
implemented yet in vcsim (from vmware/govmomi)
2017-12-13 11:13:12 -05:00
Abhijeet Kasurde 70f5e091f1
VMware: Handle version restriction error (#33805)
This fix handles RestrictedVersion error raised by server
due to restricted license.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-12-13 11:47:48 +05:30
Abhijeet Kasurde ff525ab3d1
VMware: Refactor vmware_vmkernel (#33664)
This fix adds following:
* Documentation update
* Add support for DHCP
* Refactor code to use PyVmomi class

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-12-12 14:49:16 +05:30
jglf 74a7cc7130 vmware_guest: option to enable nested virtualization (#28149)
Signed-off-by: Julien Le Foll <jlefoll@percallgroup.com>
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-12-12 11:02:56 +05:30
Abhijeet Kasurde 80fb836ce5 VMware: set extra configs for virtual machine (#33454)
This fixes implementation of extra config for virtual machine.

Fixes: #32004

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-12-12 00:19:04 -05:00
Abhijeet Kasurde 8d61583c02
VMware: add trailing / in case of nested folders (#33479)
This fix adds a trailing / in case of nested folders.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-12-12 07:57:34 +05:30
Tim Rightnour 51475cd623 Add a vmware_datastore_facts module (#30815)
Fix a bunch of things mentioned in the review.

Delete commented code from module.  Add fix for vcsim not returning
uncommitted.
Add integration test.

Add changes suggested
2017-12-10 10:55:55 -05:00
Abhijeet Kasurde 882065b9b4
VMware: Refactor vmware_guest_find module (#33412)
This fix refactors vmware_guest_find module.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-12-08 13:27:23 +05:30
John R Barker 18529a275b Bulk pep8 fixes - hand crafted (#33690)
* Bulk pep8 fixes - hand crafted

Fix by hand the remaining issues that autopep8 couldn't

* Next batch of hand crafted pep8 fixes

* Ignore W503

https://github.com/PyCQA/pycodestyle/pull/499

* Revert more of W503
2017-12-07 19:29:21 -08:00
John Barker c57a7f05e1 Bulk autopep8 (modules)
As agreed in 2017-12-07 Core meeting bulk fix pep8 issues

Generated using:
autopep8 1.3.3 (pycodestyle: 2.3.1)
autopep8 -r  --max-line-length 160 --in-place --ignore E305,E402,E722,E741 lib/ansible/modules

Manually fix issues that autopep8 has introduced
2017-12-07 20:25:55 +00:00
Abhijeet Kasurde 2caae251ff
VMware: Refactor vmware_portgroup module (#33442)
This fix adds following:

* hosts as argument spec
* cluster_name as argument spec
* refactor to use Pyvmomi class
* API refactor and documentation

Fixes: #18980

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-12-07 16:47:38 +05:30
Abhijeet Kasurde a28eb94f1a
VMware: Fix vcenter connection error message (#33621)
This fix make error message easily understable which is provided
by vcenter or ESXi server.

Fixes: #24672

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-12-06 14:06:35 +05:30
Abhijeet Kasurde 09b3b5305a
VMware: Add vmware guest param - maxMkConnections (#33220)
This fix adds functionality to configure vmware guest parameter called
'maxMkconnections'. Also, added integration test for this change.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-12-05 22:33:50 +05:30
Abhijeet Kasurde 94019e7050
VMware: add support for memory_reservation (#33080)
This fix adds functionality to support memory_reservation and
memory_reservation_lock while managing Virtual Machine.

Fixes: #20407

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-12-05 21:07:36 +05:30
Abhijeet Kasurde addb882138 VMware: make name and folder required parameter (#33135)
This fix makes name and folder as required together
parameters in vmware_guest_snapshot.
Update integration tests for vmware_guest_snapshot.

Fixes: #22644

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-12-01 10:51:45 -05:00
Abhijeet Kasurde e4254da1b1
Add esxi_hostname as argument in vmware_vswitch (#30498)
Fix adds esxi_hostname as Ansible module argument for user
to define ESXi hostname to deploy VMware vSwitch.

Fixes: #24647

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-12-01 20:49:37 +05:30
Abhijeet Kasurde 1ca7929f96 VMware: Add support for numCoresPerSocket (#33149)
This fix adds support for hardware parameter 'numCoresPerSocket'
in vmware_guest module. Also, adds integration tests for this change.

Fixes: #20406

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-11-30 08:44:31 -05:00
Abhijeet Kasurde bb3991218e
VMware: Add debug details for error (#33337)
This fix adds debugging details for 'no folder found' error.
This will allow to debug the user's setup easily.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-11-28 17:58:12 +05:30
Jonas Boesch 88a14465b7 VMware: clarified vmware_guest UUID usage (#33125) 2017-11-21 10:44:21 +00:00
Abhijeet Kasurde fbe946719e
VMware: Add fix for setting manual MAC address (#32885)
This fix adds ability to set MAC address maunally. Before adding
any MAC address, the value is validated. If value is not valid, then
MAC address is set to vCenter generated MAC address.
Also, added integration tests for this change.

Fixes: #21161

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-11-21 09:47:05 +00:00
mldmld68 a6feadbba3 VMware: Allow users to specify DVS switch version (#32925)
This fix adds option to specify DVS Switch version which is tuneable parameter.
2017-11-21 04:29:52 +00:00
Steve Jacobs 400d821fdb Added eagerzeroedthick disk option to disk spec for vmware_guest (#28121)
* Added eagerzeroedthick disk option to disk spec
* Updated docstrings for vmware_guest disk
* VMware: Integration test for disk type

Signed-off-by: Steve Jacobs <sjacobs@brokencrew.com>
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-11-21 03:11:28 +00:00
Joerg Kastning 97dfa1d335 Added datacenter parameter to examples (#32539) 2017-11-20 21:44:27 -05:00
Philippe Dellaert 0324d5e850 Updating parameter to match vmware_portgroup parameter (#33059) 2017-11-19 15:01:45 +00:00
strattner 0334b3fd99 check if existing network is VDS and has port attribute (#31322) 2017-11-19 13:47:57 +00:00
Abhijeet Kasurde a40ce1ba5e
Handle virtual machine config element gracefully (#32924)
This fix uses '_get_vm_prop' API to handle virtual machine related
properties rather than failing with AttributeError.
Handled invalid request type while connecting to ESXi server, which
is caused by malformed request.

Fixes: #32477

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-11-17 06:02:30 +00:00
Abhijeet Kasurde 90e9969fb5
VMware: handle error for MarkAsTemplate API (#32968)
This fix adds exception handling for 'MarkAsTemplate' API
in vmware_guest module.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-11-17 01:09:52 +00:00
Abhijeet Kasurde e61bcc3438
Provide clear error message after failure (#32928) 2017-11-16 06:42:27 +00:00
Abhijeet Kasurde 43f89004a0 Refactor vmware_guest_facts (#31448)
This fix adds refactoring to vmware_guest_facts module.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-11-15 01:56:50 -05:00
Gawain fa764f6918 New Module vmware_host_facts (#26492)
Add new module  vmware_host_facts ,it can get remote vmware host system info like setup module

* modify ansible version
* optimized output for human readable
* add serial number get_system_facts() add ansible_product_serial
* fix pep8 issue and ansible module required format
* Use find_obj method instead get_obj
* add ansible_hostname ansible_distribution_build
* add integration test
* vmware_host_facts integration test add verify
* fix yamllint issue
* fix boilerplate test
* Update vmware_host_facts.py
* fix RETURN key's name
2017-11-14 15:41:55 +00:00
Matt Martz 99d4f5bab4 Remove uses of assert in production code (#32079)
* Remove uses of assert in production code

* Fix assertion

* Add code smell test for assertions, currently limited to lib/ansible

* Fix assertion

* Add docs for no-assert

* Remove new assert from enos

* Fix assert in module_utils.connection
2017-11-13 11:51:18 -05:00
Dario Zanzico 8a21fa2c07 remove cpuHotAddEnabled, memoryHotAddEnabled defaults from configSpec (#25202)
* add hardware.hotadd_cpu, hardware.hotadd_memory parameters
* use hotadd_{cpu,memory} paramters on create integration tests
2017-11-10 13:09:30 +00:00
Tim Rightnour 4756b392ea Apply fix to allow the root resource pool of a cluster to be chosen (#31641)
Whitespace cleanup
2017-11-10 13:51:36 +01:00
Andreas Nafpliotis 639bac11d4 vmware cfg backup module (#21070)
* vmware cfg backup module
* used ansible's urllib
* pep8 changes
* pep8 changes
* added ansible metadata
* user can define also the backup filename
* fixed required_if values
* Changes for vmware_cfg_backup as per recommendation
* small changes (pep, specific imports etc)
* added import from future
2017-11-10 06:07:30 +00:00
Abhijeet Kasurde dbadb5a014 Add details about snapshot in result (#32730)
This fix adds details about snapshots in result of
vmware_guest_snapshot, when operation is successful.

Fixes: #32154

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-11-09 11:42:30 -05:00
Philippe Dellaert 930fde5f70 vmware_dvs_portgroup: Add configuration of vlan trunk, security settings and port policies and integration tests (#32298)
* Add configuration of vlan trunk, security settings and port policies, and tests

This commit adds the following capabilities to the
vmware_dvs_portgroup module:
- Support for VLAN trunk portgroup
- Support for all security settings (promiscuous, forged transmits & mac
address changes)
- Support for all the port specific policies
- port specific policies match the vCenter UI behaviour (for instance:
block override is enabled by default)
- Cleanup and use of proper API entities not root entities
- Integration testing

* Cleanup of docs and adding more examples
2017-11-06 11:46:51 -05:00
Jim Gu d23da2e494 add support to vmware_guest for template => vm conversion (#31607)
* add support to vmware_guest for template => vm conversion

While the vmware_guest currently supports conversion of VMs to templates
using the is_template argument, it does not support the inverse:
converting templates back into VMs.  This change adds that
functionality.

When converting a template back into a VM, the extra config option
"uuid.action" is also set so that VMware will automatically create a new
UUID for the converted VM.  If the "uuid.action" setting is already
configured, it will not be modified.  Setting this prevents an
interactive question from being raised when attempting to boot the VM.

* Add integration tests for vmware_guest is_template

* Add additional idempotency test for vmware_guest is_template
2017-10-31 09:12:40 -04:00
Tim Rightnour f7f262adc7 Add the ability to rename a snapshot, or change it's description. (#31441)
Also add tests for vmware_guest_snapshot, but disable them due to
vcsim not fully supporting such operations yet.

Implement changes suggested in review.  Also fix same in remove_or_revert_snapshot() for consistency
2017-10-30 12:20:03 -04:00
Zubair Lutfullah Kakakhel 4034630625 vmware_vm_facts: Add error check for config.vm (#31629)
Add a simple check to see if vm.config exists before looking for
vm.config.hardware
2017-10-12 10:32:06 -04:00
Abhijeet Kasurde 9d811a34c4 pep8 fixes for vmware modules (#31537)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-10-12 07:50:05 +02:00
Philippe Dellaert 9580a6569e Fix #21112 : Adding support for configuring a CD-rom iso image (#28155)
* Initial CD-ROM support

* create cdrom bugfix

* Improving CDROM change detection and fixing template creation bug
Running MarkAsTemplate on an existing template will fail with an error

* Better change detection for guest ID
Should only mark a change in case it actually changes

* Adding integration tests

* Pep8 compliance fixes

* Adding CDROM support, including iso, client and none types

* Updating added release version for CDROM option
2017-10-11 14:29:13 +02:00
Mike Klebolt ada6159ece first path check missing forward slash between dcpath and datacenter (#31481)
* fixed folder path logic

* fixed folder path logic

* fixed folder path logic
2017-10-10 03:14:12 -04:00
Abhijeet Kasurde 02b5c7a8a3 New module - vmware_guest_powerstate
Fix adds a new module 'vmware_guest_powerstate' to manage
power states of virtual machine.

Fixes: #30371

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-10-02 18:57:44 +02:00
James Tanner 8c368b25cd Implement second change from #30826 2017-10-02 12:31:51 -04:00
Abhijeet Kasurde afa3206205 Make vm_username and vm_password required params
vm_username and vm_password are required parameters in
vmware_vm_shell. Fix adds changes to documentation as well.

Fixes: #28266

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-09-30 14:50:44 +02:00
bbomgardner c2af15ce74 Remove extra space in string comp
Fixes [30983](https://github.com/ansible/ansible/issues/30983)
2017-09-27 20:27:42 +02:00
James Tanner 932f62ab57 Move resource pool login to a separate function and fix undefined var reference 2017-09-26 14:41:33 -04:00
Abhijeet Kasurde 8027aad4b8 Add support for Python3 in vmware_guest_find
* Remove redundant get_obj method
* Fix testcase
* Correct logic for compile_folder_path_for_object

Fixes: #25984

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-09-01 11:11:09 -07:00
Fobhep 72d977057f Added datacenter as variable to expample block, since it is a required variable (#25944) 2017-08-30 15:26:23 -04:00
Joerg Kastning f08c29924e Added folder and datacenter to the examples (#25221)
* Added folder and datacenter to the examples

From #22644 it seems that the parameter 'folder' is mandatory. While both are required parameters they should be used in the examples.

* Removed 'required: True' from folder documentation

I reverted the documentation of the folder option to be a not required one. This way it stays consistent with the definition of the function.
2017-08-28 18:42:27 +02:00
Abhijeet Kasurde 3e20acbd79 Refactor code for find_host_by_cluster_datacenter (#26859)
Fix adds refactor of code for find_host_by_cluster_datacenter
API in vmware_host and vmware_resource_pool.
Also, adds strict check for cluster and datacenter object find.
Testcase for vmware_resource_pool.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-08-28 18:36:46 +02:00
Andrew Makousky 9190598096 Set task status correctly for vmware_guest shutdown and reboot. (#26515) 2017-08-25 10:21:02 -04:00
Dag Wieers e7a525bd4a vmware_vswitch; Improve integration tests (#28484)
So the module was now not doing anything except adding a nic to a
vswitch. This PR adds idempotency checks, and removal checks.

We should probably add modification chacks as well, but I don't know
what the limitations are for vcsim.
2017-08-24 14:31:13 +02:00
Abhijeet Kasurde 69d03d26e5 Fix multiple issues in vmware_vswitch (#27969)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-08-21 23:07:04 +02:00
Toshio Kuratomi f203ca7907 Update metadata to 1.1 2017-08-15 23:12:08 -07:00
Abhijeet Kasurde 8b7a58c961 Remove redundant get_obj method (#26819)
Fix removes redundant get_obj method in favor of
find_datacenter_by_name API. Also, strict checking for
datacenter object.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-08-14 12:37:36 -04:00
Philippe Dellaert 920cd7bb1c New module: Waiting for VMware tools to become available (#27236)
* Adding VMware tools module
Functionality: Waits for VMware tools to become available (running
state)

* Adding base integration test preparations
Until govcsim supports actual guest tool status, the tests are disabled

* Cleanup and better getvm method

* Updating Changelog

* Adding required metaclass and future import

* Rename to vmware_guest_tools_wait

* Cleanup of documentation

* Fixing review remarks
2017-08-10 03:50:58 +02:00
Dag Wieers 2af759e9f9 vmware_vm_facts: Improve example and docs (#27898)
This fixes ansible/ansible-modules-extras#2475
2017-08-09 09:41:30 -04:00
Abhijeet Kasurde 47ccb66ae3 Add support to add multiple NICs in vSwitch (#25857)
Add support for adding multiple NICs in VMWare vSwitch.
Also, updated documetation with example.

Fixes: #23522

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-08-08 11:41:57 -04:00
Dag Wieers 3a86579b69 vcenter_license: New module to manage vCenter licenses (#25143)
This module supports check-mode and diff output.
It also includes basic integration tests.

This PR fixes #24971
2017-08-07 12:49:29 -04:00
Dag Wieers 71163d4d61 vmware_cluster: PEP8, imports, cosmetics (#25140)
This PR includes:
- Documentation improvements (mostly related to boolean defaults)
- Make PEP8 compliant
- Ensure imports are specific
- Few cosmetic changes (sort lists, casing, punctuation)
2017-08-07 12:44:27 -04:00
Toshio Kuratomi 4109a82d0a remove wildcards and add boilerplate
* cloud/centurylink
* source_control
* cloud/google
* notification
* cloud/rackspace
* cloud/vmware
2017-07-29 14:13:30 -07:00
Toshio Kuratomi 225fa5d092 Fix undefined variables, basestring usage, and some associated python3 issues 2017-07-25 15:58:23 -07:00
Dag Wieers a5eea9042e vmware_host: Small fixes and docs updates (#25144)
* vmware_host: Small fixes and docs updates

This PR includes:
- A fix to no longer require a datacenter folder for adding a host
- Documentation improvements
- Ensure imports are specific

* Update vmware_host

Fix adds following:
* Update logic in vmware_host
* Update example documentation
* Added test case for vmware_host

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-07-24 13:02:58 -04:00
Abhijeet Kasurde 9649195c26 Refactor getvm method (#27188)
Fix refactors getvm method and modules which are using it.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-07-24 12:51:26 -04:00
Abhijeet Kasurde ede82e2130 Implement vmware_argument_spec for required params (#25731)
Without the fix hostname, username and password params
used to skip required check.

Fixes #25696

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-07-21 12:12:43 -04:00
Abhijeet Kasurde cf34cefbdc Add FindByUUID testcase for vmware_guest_facts (#27022)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-07-19 06:43:51 -04:00
Abhijeet Kasurde f5e9d19af7 Correct usage of FindByUuid in vmware module util (#26040)
This fix corrects the usage of function FindByUuid by
specifying correct parameter 'uuid' and 'instanceUuid'
as documentation of VMWare's API.

Fixes: #24398, #24835, #25713

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-07-18 07:48:21 -04:00
Abdul Anshad A c6d012a2eb fix issue #4755 (#19234) 2017-07-18 07:27:37 -04:00
Jimmy Conner fbf68b5725 vmware_guest relative paths for folder (#26927)
* Re-introduce relative paths to vmware_guest folder:

Move compile_folder_path_for_object function from vmware_guest_find to
utilities
Allow full path or relative path to be specified for the folder
parameter.  We will build the full path to the new VM.

* Remove duplicate check

* PEP8 Fixes
2017-07-17 22:18:20 -04:00
Abhijeet Kasurde e979663dfe Add testcase for vmware_guest_facts (#26873)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-07-17 13:34:43 -04:00
Abhijeet Kasurde 6bc15d11b9 Remove unreachable code (#26820)
Break statement is unreachable in current for loop.
Safely remove break statement.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-07-14 14:52:30 -04:00
Abhijeet Kasurde b6fdc904a9 Remove redundant switch_name param (#26817)
Class uses a redundant switch_name param, which can be
removed safely.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-07-14 14:49:48 -04:00
Gawain 6608629d25 Add 'mac_address' to the attributes returned from the vmware_vm_facts module (#26527)
* Add 'mac_address' to the attributes returned from the vmware_vm_facts module

* fix pep8 issue
2017-07-14 10:25:20 -04:00
Abhijeet Kasurde a1977d9654 Remove redundant get_obj method (#26324)
vmware_guest_facts has redundant get_obj method, this can
be removed safetly.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-07-14 10:04:10 -04:00
Abhijeet Kasurde b4a58b65fb Add param for snapshot subtree removal (#26576)
Fix adds a parameter for removing snapshot subtree.

Fixes: #26522

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-07-14 10:00:37 -04:00
jctanner 245a4d30b9 vmware_guest: fix datastore selection on equal sized disks and add tests (#26774)
* Fix datastore selection on equal sized disks and add tests
2017-07-13 22:02:33 -04:00
jctanner df507ca9c4 vmware_guest: fixes for cache objects and datacenter association (#26719)
* vmware_guest: fixes for cache objects and datacenter association
* find_all_objs was only looking for datastores
* Clear the result if it's datacenter is not correct.
* Re-enable pyvmomi installation

Addresses #25011
Addresses #26511
2017-07-12 17:10:48 -04:00
jctanner 10fc4417f7 vmware_guest: use the datacenter as a context for clone specs (#26511)
* Slight refactor on vmware_guest to fix path searching and vcsim compatibility.
* Clean up pep8 errors
* Fix more pep8 issues
* Add assertions
* Remove debug failure
* Update docsting for folder with examples
* Revise _get_vm_prop based on suggestions
* Implement folder walker to find a folder path
* More enhancements for datacenter->datacenter cloning
* Fix a few pep8 issues
* Remove useless check for subclass of None
* Fix a few suggestions
* Move serialize_spec to a util function
* Group exceptions together

Fixes #25011
2017-07-11 23:07:00 -04:00
Abhijeet Kasurde ec6e3b0e32 Handle errors gracefully in vmware_guest_snapshot (#25727)
CreateSnapshot may fail with several exceptions. This
fix generically handles these exceptions.

Fixes #21121

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-07-03 13:39:29 -04:00
Abhijeet Kasurde 29f5fe3ddd Resolve module correctly (#25658)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-07-03 11:36:42 -04:00
Abhijeet Kasurde 611fbea8ea Support quiesce, memory in vmware guest snapshot (#26275)
Fix adds support for quiesce and memory options while taking
snapshot of virtual machine. Update documentation and examples
for reflecting this change.

Fixes #26270

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-06-30 12:34:37 -04:00
Abhijeet Kasurde 5c374cd1ae Add Test Suite for vmware_vswitch (#26076)
Fix adds test suite for vwmare_switch

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-06-30 10:18:20 -04:00
Abdul Anshad A 61b18cc355 fixes issue #5633 (#19716) 2017-06-28 10:47:53 -05:00
Abdul-Anshad-A 36975c50ef test fix for thin disk type issue 2017-06-28 11:45:45 -04:00
Abhijeet Kasurde 79b2897462 Update vmware_guest_find module (#26066)
Fix updated following:
* Update Documentation
* Update Examples
* Find VM's folder using VM's UUID
* Make name as optional parameter

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-06-27 11:58:57 -04:00
Abhijeet Kasurde d63cdcacc3 Make nic_name as optional parameter (#25990)
Fix adds support for adding VMWare vSwitch without
any physical NICs (uplinks). This makes nic_name as
an optional parameter. Also, updated documentation and
examples to reflect these changes.

Fixes #25632

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-06-26 12:47:10 -04:00
Dag Wieers cf30b162a9 vmware_guest: Various fixes to VM customizations (from template) (#24768)
* Various fixes to VM customizations (from template)

This patch implements:
- New find_obj() function from vmware.py replacing get_obj()
- Implement proper resource_pool selection
- Fix productId implementation (was not working)
- Ensure that we are not changing anything that is not mandatory (hostName, orgName, fullName)


This is an alternative proposal to #24283
This does not fix #19860 yet though.

For our use-case, we do not want to customize the network information (or any information in fact).
What is used in the template should remain intact.

* Added find_obj() function

* Fix the returned object-list (unused yet)

* Small improvement

* Support DHCP type and fix customizations

* Small fix

* Support resource_pool also for reconfiguring VM

* Remove redundant

* Fix short hostname, specific resource_pool, PEP8

* Improve docs and examples

* Fix missing hostsystem

* Make folder absolute path

* Improve docs, add missing 'mac'
2017-06-13 17:50:55 -04:00
Abhijeet Kasurde 0770b1018c Correct variable name in vca_nat module
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-06-12 19:36:08 -04:00
Abhijeet Kasurde b89cb95609 Fix spelling mistakes (comments only) (#25564)
Original Author : klemens <ka7@github.com>

Taking over previous PR as per
https://github.com/ansible/ansible/pull/23644#issuecomment-307334525

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-06-12 07:55:19 +01:00
kgottholm 1e4b227e6f Os port fix (#24913)
* replace deprecated cmp() with custom conditional
cmp is not present in Python3 but several modules use it
Reference 24756
2017-05-23 09:40:56 -07:00
Michael b65ebf3519 Fixed import of urlencode and pathname2url from urllib for python3 (#24424) 2017-05-19 12:22:16 -05:00
jctanner bfc551b3f8 Add vmware_guest_find.py module (#24260)
* Add vmware_guest_find.py module

* Fixup linter errors

* Add missing empty line
2017-05-16 08:48:40 -07:00
Lemar Carthens ef13f0f389 vmware_guest: Fix VM creation when adding a network device without a MAC address (#24138)
* vmware_guest: Fix VM creation when adding a network device without a MAC address

* Provide python2.4 compatibility
2017-05-16 08:47:49 -07:00
Jimmy Conner 2380e50408 vmware_guest: Add support for Linked Clones (#23284)
* vmware_guest: Add support for Linked Clones

* Resolve PEP8 Issues

* Change snapshot_name to snapshot_src

* Add additional option 'snapshot_linked' to specify whether to use a linked clone or not

* Changed snapshot_linked parameter to "linked_clone"

* Remove unnecessary conditional
2017-05-16 09:26:51 -04:00
Dag Wieers 58c1a9dd94 vmware_guest: Don't force onto specific host (#22777)
Unless we provided a specific esxi_hostname, don't force new VMs onto the first host in the cluster.
2017-05-05 05:27:04 -04:00
Patrick Chauncey 0d5fe8fd94 Add 'uuid' to the attributes returned from the vmware_vm_facts module. (#23773) 2017-04-28 16:28:49 -04:00
Cody Boggs 1c11a35f70 Fix orphan resource pool crash (Issue #24078) (#24079)
Fixes issue [#24078](https://github.com/ansible/ansible/issues/24078)

Resource pools are retrieved from VSphere regardless of the state of the `resource_pool` parameter. During this process, each retrieved Resource Pool is checked for the `parent` attribute, and if it exists, the currently-scoped parent object is compared against the Resource Pool's parent object. The method doing the check, however, `assert`s that the parent object is not `None`. In some cases, a Resource Pool will have the `parent` attr, but that `parent` object will be `None`, causing the `assert` to fail.

This should avoid that. :-)
2017-04-28 15:14:05 -04:00
Andrea Tartaglia 1d0a629dcc Fixed docs for cloud modules (#23745)
* Fixed docs for cloud modules

* removed blank line in ec2_snapshot_facts
2017-04-27 12:01:11 +01:00
Loïc Blot 504a768636 Show UUID instead of name when using UUID to select snapshot (#23787) 2017-04-20 11:11:04 +01:00
Abhijeet cc745b0224 Minor typo in vmware_guest_facts (#23791)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-04-20 11:04:03 +01:00
Dag Wieers 071903b868 vmware_guest_snapshots: Add delegate_to directive to examples (#22933)
Without it it is not doing what most people would expect.
2017-04-18 12:53:55 +00:00
Dag Wieers a075c56dbf vmware_guest_facts: Add delegate_to directive to example (#22931)
Without it, this is not going to do what most people expect.

This fixes #22840
2017-04-08 07:10:35 +01:00
Dag Wieers 3648e6fd2b vmware_guest: Add delegate_to directive to examples (#22932)
Without this it is likely not going to do what people expect.
2017-04-07 18:17:18 +01:00
John R Barker f9b75d44e8 pep8 fixes (#23005) 2017-03-27 18:36:20 +01:00
John R Barker 58441869bd metadata_version, not version 2017-03-27 18:25:36 +01:00
Davis Phillips 36e24c53c6 Vmware resource pool first add (#21116)
* Adding first checkin of resource_pool module
* fixing length issues and indentation multipliers
* mend
* mend
* mend
* remove * import from modules
* Add space on variable assignments
* changing line 321 to less characters
* fixing pep8 issues
* mend
* cleaning up example section
* Add RETURN section
* adding spacing to list
* all spacing consistent now
* move imports as per CI
2017-03-27 10:35:58 -04:00
Matt Martz 3164e8b561 E501 fixes (#22879) 2017-03-22 20:50:28 -05:00
Matt Martz 02f66b9369 E1 legacy pep8 fixes (#21933)
* E1 pep8 fixes

* e111 fix for rds.py
2017-03-21 21:19:40 -05:00
Dag Wieers 895664f539 vmware_guest: Fix "KeyError: 'changed'" (#22564)
Due to how the result-dictionary is being used, in some codepaths it would have an empty dictionary.
This then is problematic if the code expects the 'changed' key later on.

I also improved the docs a bit, by clearly marking the parameter names and URL in the documentation.
2017-03-16 10:55:07 -04:00
Toshio Kuratomi eb1214baad New metadata 1.0 (#22587)
Changes to the metadata format were approved here:
https://github.com/ansible/proposals/issues/54
* Update documentation to the new metadata format
* Changes to metadata-tool to account for new metadata
  * Add GPL license header
  * Add upgrade subcommand to upgrade metadata version
  * Change default metadata to the new format
  * Fix exclusion of non-modules from the metadata report
* Fix ansible-doc for new module metadata
* Exclude metadata version from ansible-doc output
* Fix website docs generation for the new metadata
* Update metadata schema in valiate-modules test
* Update the metadata in all modules to the new version
2017-03-14 09:07:22 -07:00
rollerwhrtn e8ef826976 Changed datacenter Required to False since default is set. Fixes 'required and default are mutually exclusive for datacenter' error. Fixes 21076 (#21492) 2017-02-27 09:15:06 -05:00
Matt Martz 305c88700d PEP8 E712 fixes (#21916) 2017-02-24 16:49:43 -06:00
Matt Clay 879feff6b7 Fix PEP 8 issue. 2017-02-21 10:24:02 -08:00
Sebastien Lacoste-Seris 77596951b8 Update vca_vapp.py (#19562)
Check result of vApp creation and return module failure if creation task not present
2017-02-21 09:00:07 -05:00
Matt Martz 7c00346714 Validate EXAMPLES as YAML 2017-02-15 13:01:43 -08:00
aperigault 98d841b324 vmware_guest: Fix undefine variable in rename feature (#20855)
* vmware_guest: Fix undefine variable in rename feature

* vmare_guest: We can't wait_for_task because MarkAsTemplate return None
2017-02-11 22:46:58 -05:00
Davis Phillips 239c6aee35 added default datacenter ha-datacenter and set wait_for_ip_address to… (#21076)
* added default datacenter ha-datacenter and set wait_for_ip_address to default False - closes 21074

* Updated docs to reflect changes
2017-02-09 22:43:31 -05:00
Abdul Anshad A b30942787b Add guest shutdown/reboot (#20564) 2017-02-07 10:33:13 -05:00
Davis Phillips 65e55d47b1 fixes 20904 (#21068) 2017-02-06 14:37:42 -05:00
Loïc Blot b55d039f67 New modules: vmware_guest_facts & vmware_guest_snapshot (#20971)
* Move gather_facts action outside of vmware_guest module
* Move facts gathering method to vmware.py library
* vmware_guest use some vmware.py library methods
* vmware.py lib: fix some PEP 8 issues
* Move snapshot actions to vmware_guest_snapshot
* Move common snapshot facts to vmware.py library
2017-02-06 11:52:17 -05:00
Davis Phillips 00fdec1d60 closes #21011 (#21015) 2017-02-03 13:57:19 -05:00
Matt Martz 829c0b8f62 Update validate-modules (#20932)
* Update validate-modules

* Validates ANSIBLE_METADATA
* Ensures imports happen after documentation vars
* Some pep8 cleanup

* Clean up some left over unneeded code

* Update modules for new module guidelines and validate-modules checks

* Update imports for ec2_vpc_route_table and ec2_vpc_nat_gateway
2017-02-02 11:45:22 -08:00
Matt Clay cb76200c7d PEP 8 E111 & E114 cleanup. (#20838) 2017-01-30 15:01:47 -08:00
Matt Clay 10d9318de7 PEP 8 indent cleanup. (#20800)
* PEP 8 E121 cleanup.

* PEP 8 E126 cleanup.

* PEP 8 E122 cleanup.
2017-01-29 07:28:53 +00:00
Matt Clay d0d1158c5e PEP 8 cleanup. (#20789)
* PEP 8 E703 cleanup.
* PEP 8 E701 cleanup.
* PEP 8 E711 cleanup.
* PEP 8 W191 and E101 cleanup.
2017-01-28 00:12:11 -08:00
Matt Clay d913f69ba1 PEP 8 W291 whitespace cleanup. 2017-01-27 17:08:02 -08:00
Matt Clay 95789f3949 PEP 8 whitespace cleanup. (#20783)
* PEP 8 E271 whitespace cleanup.
* PEP 8 W293 whitespace cleanup.
* Fix whitespace issue from recent PR.
2017-01-27 15:45:23 -08:00
Matt Clay 63b1e0c277 Fix infrequent PEP 8 issues. 2017-01-27 14:06:21 -08:00
Antony PERIGAULT 0bc2ccdebf vmware_guest: Fix a bug when deploy a VM is not always considered as a change 2017-01-26 13:40:55 -05:00
Dag Wieers e06227ce16 Small cosmetic changes and documentation updates (#20632)
After merging the latest update, these were the few remaining
differences with upstream.

(Plus the previous proposed fast match based on unique VM name which is
not longer needed)
2017-01-26 10:26:07 -05:00
aperigault 614390a310 vmware_guest: Fix nic configuration with already present nics (#20640) 2017-01-26 12:42:08 +00:00
aperigault add06b505a vmware_guest: Amazing speed up module (#19937)
* vmware_guest: Amazing speed up module
* vmware_guest: Change variables name to do PEP compliant
2017-01-24 11:42:37 -05:00
aperigault e9704b389b vmware_guest: Fix windows joindomain customization (#20303) 2017-01-18 10:52:51 +00:00
nerzhul 90d94bd6db vmware_guest: doc fix 2017-01-16 10:09:52 -05:00
Dag Wieers 439ef46898 vmware_guest: networks definition as a list (#19857)
* vmware_guest: networks definition as a list

Currently the networks definition is a dict, with the network range as
key. This is problematic if the network information is coming from other
sources.

This patch turns the networks definition into a list.

This fixes #19222.

* Remove the option to provide either netmask or network

It is more concise if there's only one way to configure it.
So provide both `ip` and `network`.

(I also re-indented a section due to a useless check)

* Fix bugs reported by @dav1x

Thanks !
2017-01-16 09:30:37 -05:00
Dag Wieers 20df62ab31 vmware_guest: Various fixes and changes
Changes missing from a poor merge probably, but also a few new things.
- Reordered the examples from important (often used) to less important
  (fewer used)
- Remove the new_name: option and replace it with the uuid/name
  combination for renaming + added example
- Added an example using the VM uuid instead of the VM name
- Also check whether the password is non-empty (rogue merge)
- Wait for all tasks to finish (to be sure the new facts reflect the
  state)
- Ensure that on failure we still set the change-bit
- Moved a set of functions that are unused (related to transfering
  files to guest, or running commands) to module_utils
2017-01-16 09:26:17 -05:00
Toshio Kuratomi 8ae29a5a80 Remove the redundant get_exception import 2017-01-10 08:19:54 -08:00
Dag Wieers 560831752e Defined get_exception() (#20087)
This fixes #20080
2017-01-10 08:18:51 -08:00
Ner'zhul 16a1585ffc vmware_guest: Fix customvalues when VM doesn't exists (#20094) 2017-01-10 11:07:42 -05:00
Brian Coca 3ceff2f9b3 added missing import 2017-01-10 10:37:55 -05:00
Ner'zhul 7603ae33b5 vmware_guest improvements: annotations & customvalues (#20052)
* Idempotency fix on annotations permitting to change them on reconfiguration
* Permit to set VMware customvalues attributes on VM
* Gather annotation & customvalues and report it into module facts
2017-01-10 09:10:48 -05:00
Dag Wieers aca60f1776 vmware_guest: various customizations changes and fixes (#19975)
* vmware_guest: various changes and fixes

Most of my queued changes were already implemented by @aperigault !

This was still open
- Typos
- Various fixes to dict.get() without quotes
- Defaults to fullname and orgname (so they are no longer mandatory)
- Add missing timezone implementation
- Remove the customize flag from the options
- Rename 'customizations' to 'customization' (cfr VMware docs and fora)

* Important fixes for idempotency and customization

- A password is mandatory for customization to work on Windows !
- An important fix for idempotency related to guestId
- Support all types of Windows guestId entries

* Suggestion by @aperigault

* Small documentation fixes
2017-01-10 08:34:38 -05:00
Ner'zhul e87d6d8a70 Unbreak vmware_guest module which was break by 818ef493ad (#20036) 2017-01-09 11:29:18 +00:00
aperigault 8241675095 vmware_guest: Rename existing VM, or mark as template (#20018)
* vmware_guest: Add rename feature

* vmware_guest: Add feature to mark an existing VM as template
2017-01-09 09:37:36 +00:00
Toshio Kuratomi 08d6990e67 Fix code-blocks to use correct syntax highlighting 2017-01-08 09:18:45 -08:00
aperigault 818ef493ad vmware_guest: Add windows customization support (#19866)
* vmware_guest: Add windows customization support

* vmware_guest: Move customizations inside separate function
2017-01-06 10:27:48 -05:00
Dag Wieers 00031e454e Sanitize folder path from the very start (#19929)
- If an absolute path is provided, ensure it starts with /vm
- Also ensure there are no trailing slashes

This gets rid of a few locations where the same was being done.
It also fixes the cases of multiple trailing slashes, or ending up with
/vm/ instead of /vm.
2017-01-06 09:05:10 -05:00
Dag Wieers 9ddcf16b4b vmware_guest: add support for more virtual NICs (#19932)
This patch adds support for all other virtual NICs, including:

 - pcnet32
 - vmxnet2
 - e1000e
 - sriov

Without this change, VMs with one of these NICs will fail with a
fault.NicSettingMismatch.summary error as it will only add interfaces,
not edit these.

This fixes #19860
2017-01-05 18:16:21 +01:00
Dag Wieers ecaa0202b9 vmware_guest: assorted fixes and improvements (#19842)
A small collection of fixes and improvements:
- Simplify should_deploy_from_template()
- Bugfix for x.config that can be None
- Bugfix for mandatory guest_id (not when using templates)
- Simplify key testing and defaults
- Fix an incorrect reference to the last network
- Duplicate alias 'folder' removed
2017-01-04 17:25:09 -05:00
Dag Wieers fbec2ecaa8 vmware_guest: Do not match simply by folder (#19823)
This fixes #19077
2017-01-04 09:26:29 +00:00
Dag Wieers 0d9392a3bc vmware_guest: import iteritems (#19821)
Without this change you get this on Python 2.7.5:

    NameError: global name 'iteritems' is not defined
2017-01-04 09:12:29 +00:00
Ner'zhul 2c17f9becd vmware_guest: module rewrite to add many features & fixes (#19228)
* vmware_guest: various fixes, improvements & additions

* Add template_flag attribute to define if the destination machine is a
template
* Add helper class to create:
  * SCSI controller
  * Disks
  * Network devices
* New feature: create VM without using templates
* New feature: multiple NIC
* New feature: multiple disks
* New feature: custom SCSI controller types (default: paravirtual)
* New feature: NIC can now be E1000 or VMXNet3 (default)
* New feature: customize NIC mac address
* New feature: new disk option autoselect_datastore permit to select the less used datastore. If datastore field is provided, filter the datastore list before selection
* New feature: Implement disk resizing + addition when state=present and VM exists
* New feature: when state=present and vm exists, modify the current CPU, Memory and disk space
* New feature: add guest_id support permitting to customize & change current VM guest ID in VMWare
* New feature: resource pool support
* New feature: change VM configuration without recreating it (CPU, memory, disks, network, guest ID, resource pool)
* Add 'gatherfacts' state to gather facts on a VM instead of previous 'present' state ('present' ensure the VM configuration)
* Add PyVmomiCache class to cache read only object
* Various python code fixes
* Various documentation fixes
* esxi_hostname & cluster are now exclusive
* Drop ips attribute & set ip directly into networks
* Little performance fixes by removing some duplicate calls to VMWare API
* Python 3 portability fixes
* Create many functions to make the code maintainable
* Cleanup some useless attributes

* Add 'suspended' as desired state for VM

* Make guest_id, memory & CPU number optional in reconfiguration mode

* Note: guest_id is now mandatory to create a VM from scratch (not templating)

* Bux fixes + Do network IP optinal + Add network vlan option
2017-01-03 09:48:07 -05:00
Carlos E. Garcia 0b8011436d minor spelling changes 2016-12-13 13:51:13 -05:00
Andrea Tartaglia ef391a11ec Removed dict.iteritems() in modules. (#18859)
This is for py3 compatibility, addressed in #18506
2016-12-12 15:16:23 -08:00
Matt Clay c709b22e5c Fix differences with devel. 2016-12-08 11:35:21 -05:00
James Cammarata 011ea55a8f Relocating extras into lib/ansible/modules/ after merge 2016-12-08 11:35:18 -05:00
James Cammarata 8afa090417 Resolving differences in core modules post-merge 2016-12-08 11:25:36 -05:00
Toshio Kuratomi 7319104552 Refreshed metadata for core modules 2016-12-08 11:25:35 -05:00
Andrea Tartaglia 48d47a57d5 ported iterkeys to py3 syntax (#5657)
* ported iterkeys to py3 syntax

Addresses ansible/ansible#18507

* Use ansible.module_utils.six.moves iterkeys instead of dict.keys()

* Removed 'iterkeys'
2016-12-08 11:25:33 -05:00
Jason Cormie 9baca6ef3d Addition of InstanceUUID to facts (#4424)
The Instance UUID(refered to as PersistenceUUID in the API) is a the ID
vcenter uses to idenify VMs.
My use case for this is that I configure Zabbix using ansible and its
vmware module relies on using these to identify VMs.
2016-12-08 11:25:27 -05:00
Davis Phillips 37008e1da1 vsphere_guest: Set extra config and powerstate after template deploy (#4266)
* Fixes #1381
* Fixes #2971
* Fixes #3056
2016-12-08 11:25:20 -05:00
John R Barker 25b6492d37 Bulk spelling improvement to modules-core (#5225)
* Correct spelling mistakes

* Correct more spelling issues

* merge conflict

* Revert typo in parms
2016-12-08 11:25:20 -05:00
Michael Scherer d519fca04b Port vsphere_guest to py3/py2.4 syntax (#3721) 2016-12-08 11:24:30 -05:00
Cheuk Lam a2ff7fc7ea Added support for accepting extra config options in vm reconfiguration. (#3327) 2016-12-08 11:24:29 -05:00
Michael Fenn add1a342fe Support altering the virtual cdrom when state == reconfigured (#2394)
This allows a user to modify the state of the virtual cdrom in a VM
by using the state == reconfigured action.  This is useful for
provisioning VMs from templates which do not have ISO images connected.
2016-12-08 11:24:18 -05:00
Brian Coca 7a804fd17c tolerate environment not being set
default will be the same as before, None/null
2016-12-08 11:24:07 -05:00
Matt Martz aaf762573e Various simple linting type cleanups on modules 2016-12-08 11:24:06 -05:00
Jason Kohles bc834ff564 Enable env vars for vsphere_guest
This commit allows the connection information for
the vsphere_guest module to be provided as environment
variables, which makes it possible to use Cloud
Credentials from Ansible Tower in playbooks that utilize
vsphere_guest.

| ENV VAR         | vsphere_guest param    |
| --------------- | ---------------------- |
| VMWARE_HOST     | vcenter_hostname       |
| VMWARE_USER     | username               |
| VMWARE_PASSWORD | password               |
2016-12-08 11:24:05 -05:00
Toshio Kuratomi a21ce559e5 Make validate_certs for vsphere_guest work with older python2 2016-12-08 11:24:03 -05:00
Sebastien Couture 5674e77d7e moved code that gets the vm's current hard drive profile and checks if vm_disk definition count is higher than actual vm drive count out of for loop for efficiency 2016-12-08 11:24:02 -05:00
Sebastien Couture e5decc3e51 Added support for resizing disks when state is 'reconfigured' 2016-12-08 11:24:02 -05:00
Stewart Rutledge 79b8a42354 Changed insecure to validate_certs, with a default to true from false (reversing behavior) 2016-12-08 11:24:02 -05:00
Stewart Rutledge 2f79e2c01c Added support for insecure parameter 2016-12-08 11:24:01 -05:00
Charles Paul 980691338a adding no_log to password 2016-12-08 11:23:55 -05:00
luto 610de975e6 vsphere_guest: when creating a guest, gather facts about it *before* disconnect 2016-12-08 11:23:55 -05:00
luto d20c4368d2 vsphere_guest: add power status to facts 2016-12-08 11:23:55 -05:00
luto d48dffc298 vsphere_guest: support putting a guest into a nested folder 2016-12-08 11:23:53 -05:00
Tobias Smolka cf5403afa3 Making cluster parameter optional 2016-12-08 11:23:53 -05:00