Commit graph

129 commits

Author SHA1 Message Date
Joseph Callen
2fc15c5d2b Resolves issue with vmware_vswitch module for v2.0
When this module was written back in May 2015 we were using 1.9.x. Being lazy I added to param the objects that the other functions would need. What I have noticed is in 2.0 exit_json is trying to jsonify those complex objects and failing.

Playbook
```yaml
   - name: Add a temporary vSwitch
      local_action:
        module: vmware_vswitch
        hostname: "{{ inventory_hostname }}"
        username: "{{ esxi_username }}"
        password: "{{ site_passwd }}"
        switch_name: temp_vswitch
        nic_name: "{{ vss_vmnic }}"
        mtu: 1500
```

Module Testing
```bash
TASK [Add a temporary vSwitch] *************************************************
task path: /opt/autodeploy/projects/emmet/tasks/deploy/esxi_network.yml:13
ESTABLISH LOCAL CONNECTION FOR USER: root
localhost EXEC ( umask 22 && mkdir -p "$( echo $HOME/.ansible/tmp/ansible-tmp-1454342817.37-180776062017566 )" && echo "$( echo $HOME/.ansible/tmp/ansible-tmp-1454342817.37-180776062017566 )" )
ESTABLISH LOCAL CONNECTION FOR USER: root
localhost EXEC ( umask 22 && mkdir -p "$( echo $HOME/.ansible/tmp/ansible-tmp-1454342817.41-201974997737598 )" && echo "$( echo $HOME/.ansible/tmp/ansible-tmp-1454342817.41-201974997737598 )" )
ESTABLISH LOCAL CONNECTION FOR USER: root
localhost EXEC ( umask 22 && mkdir -p "$( echo $HOME/.ansible/tmp/ansible-tmp-1454342817.44-148446986849801 )" && echo "$( echo $HOME/.ansible/tmp/ansible-tmp-1454342817.44-148446986849801 )" )
localhost PUT /tmp/tmpLLExSG TO /root/.ansible/tmp/ansible-tmp-1454342817.37-180776062017566/vmware_vswitch
localhost EXEC LANG=en_US.UTF-8 LC_ALL=en_US.UTF-8 LC_MESSAGES=en_US.UTF-8 /usr/bin/python /root/.ansible/tmp/ansible-tmp-1454342817.37-180776062017566/vmware_vswitch; rm -rf "/root/.ansible/tmp/ansible-tmp-1454342817.37-180776062017566/" > /dev/null 2>&1
localhost PUT /tmp/tmpyoAaHt TO /root/.ansible/tmp/ansible-tmp-1454342817.41-201974997737598/vmware_vswitch
localhost EXEC LANG=en_US.UTF-8 LC_ALL=en_US.UTF-8 LC_MESSAGES=en_US.UTF-8 /usr/bin/python /root/.ansible/tmp/ansible-tmp-1454342817.41-201974997737598/vmware_vswitch; rm -rf "/root/.ansible/tmp/ansible-tmp-1454342817.41-201974997737598/" > /dev/null 2>&1
localhost PUT /tmp/tmpPcmaMZ TO /root/.ansible/tmp/ansible-tmp-1454342817.44-148446986849801/vmware_vswitch
localhost EXEC LANG=en_US.UTF-8 LC_ALL=en_US.UTF-8 LC_MESSAGES=en_US.UTF-8 /usr/bin/python /root/.ansible/tmp/ansible-tmp-1454342817.44-148446986849801/vmware_vswitch; rm -rf "/root/.ansible/tmp/ansible-tmp-1454342817.44-148446986849801/" > /dev/null 2>&1
changed: [foundation-esxi-01 -> localhost] => {"changed": true, "invocation": {"module_args": {"hostname": "foundation-esxi-01", "mtu": 1500, "nic_name": "vmnic1", "number_of_ports": 128, "password": "VALUE_SPECIFIED_IN_NO_LOG_PARAMETER", "state": "present", "switch_name": "temp_vswitch", "username": "root"}, "module_name": "vmware_vswitch"}}
changed: [foundation-esxi-02 -> localhost] => {"changed": true, "invocation": {"module_args": {"hostname": "foundation-esxi-02", "mtu": 1500, "nic_name": "vmnic1", "number_of_ports": 128, "password": "VALUE_SPECIFIED_IN_NO_LOG_PARAMETER", "state": "present", "switch_name": "temp_vswitch", "username": "root"}, "module_name": "vmware_vswitch"}}
changed: [foundation-esxi-03 -> localhost] => {"changed": true, "invocation": {"module_args": {"hostname": "foundation-esxi-03", "mtu": 1500, "nic_name": "vmnic1", "number_of_ports": 128, "password": "VALUE_SPECIFIED_IN_NO_LOG_PARAMETER", "state": "present", "switch_name": "temp_vswitch", "username": "root"}, "module_name": "vmware_vswitch"}}

```

Documentation fix
2016-02-01 11:21:38 -05:00
Chrrrles Paul
570869ef48 Merge pull request #1487 from chrrrles/vmware_doc_fragments
use doc fragments
2016-01-15 15:42:25 -06:00
Charles Paul
0ba3d85522 use doc fragments 2016-01-12 11:03:44 -06:00
Toshio Kuratomi
d6af6f8477 Update for modules which import json.
Some do not use the json module directly so don't need import json.
Some needed to fallback to simplejson with no traceback if neither was installed

Fixes #1298
2016-01-11 13:06:22 -08:00
Charles Paul
6f4aaecb6a adding no_log to password 2016-01-05 14:36:05 -06:00
Matthew Jones
c157dbe55a Fix up vsphere_copy after open_url change
* Remove leading module parameter on open_url call as it's no longer used
  by module_utils.urls.open_url
* Force basic auth otherwise vsphere will just return a 401
2015-12-13 01:13:47 -05:00
Chrrrles Paul
0ee578e938 Changing docs to reflect vm_name as the default vm_id_type 2015-12-11 09:57:10 -05:00
Charles Paul
7ded482e6c pep8 whitespace 2015-12-10 15:42:49 -05:00
Charles Paul
51813e0033 upped version added, search by vm_name by default 2015-12-09 16:30:31 -05:00
Ritesh Khadgaray
426e76dddb vmware_vm_shell: add the ability to start program without network connection 2015-12-02 19:33:34 +05:30
Toshio Kuratomi
4bf75fca9f Merge pull request #788 from ansible/open_url-vsphere-copy
Port vsphere_copy from httplib to open_url for TLS cert validation
2015-11-02 08:59:35 -08:00
Charles Paul
51bb65c9a3 reference instance_id in docs, fixes for calls to fail_json 2015-10-12 08:35:21 -05:00
Matt Martz
1a76f4cc22 Fix interpreter line in a few vmware modules 2015-10-05 12:55:39 -05:00
Peter Sprygada
0f90661752 cleaned up vca_vapp module to focus on managing vapps 2015-09-21 20:03:32 -04:00
Chrrrles Paul
6950db5d01 Merge pull request #991 from privateip/vca_nat
updated vca_nat module to use common vca library
2015-09-21 08:09:04 -05:00
Chrrrles Paul
2476fe8325 Merge pull request #992 from privateip/vca_vapp
refactor vca_vapp to use vca common module
2015-09-21 08:08:56 -05:00
Peter Sprygada
fedef0c958 refactor vca_vapp to use vca common module 2015-09-17 15:22:27 -04:00
Peter Sprygada
71ecaeb9f0 refactored vca_fw to use vca common module 2015-09-17 14:57:48 -04:00
Peter Sprygada
a4f1653b95 updated vca_nat module to use common vca library 2015-09-17 14:52:49 -04:00
Peter Sprygada
356e867721 adds missing serialize_instance function 2015-09-08 10:50:13 -04:00
Toshio Kuratomi
6a3cf63351 correct documentation formatting 2015-09-05 08:55:34 -07:00
Chrrrles Paul
80cae51b16 Merge pull request #873 from jcpowermac/add_vmware_migrate_vmk_module
Merge into extra for further testing and feedback  --  New VMware Module to support migrating vmkernel adapter
2015-08-27 18:05:36 -05:00
Chrrrles Paul
f20d10728e Merge pull request #874 from mtnbikenc/add_vmware_target_canonical_facts_module
Merging for further testing / feedback.
2015-08-27 17:55:42 -05:00
Chrrrles Paul
50b3612fef Merge pull request #889 from ansible/revert-884-revert-867-add_vmware_vmkernel_ip_config_module
Merge for real now -- Merge in devel extras for further testing and feedback --  Revert "Revert "New VMware ...
2015-08-27 17:53:19 -05:00
Chrrrles Paul
2ccbc5830e Merge pull request #870 from mtnbikenc/add_vmware_vm_vss_dvs_migrate_module
Merge in devel for further testing, and hopefully discussion with community about future direction for the cloud/vmware modules. -- 

New VMware Module to support migrating a VM from a vSS to a vDS
2015-08-27 17:52:26 -05:00
Chrrrles Paul
2647d2b637 Revert "Revert "New VMware Module to support configuring a VMware vmkernel IP…" 2015-08-27 17:44:29 -05:00
Chrrrles Paul
02e3adf402 Revert "New VMware Module to support configuring a VMware vmkernel IP Address" 2015-08-26 20:43:43 -05:00
Chrrrles Paul
7ef187bbbd Merge pull request #867 from mtnbikenc/add_vmware_vmkernel_ip_config_module
Looks good -- can extend if more customization of virtualnic spec is needed --   New VMware Module to support configuring a VMware vmkernel IP Address
2015-08-26 18:21:31 -05:00
Chrrrles Paul
2c7afe17f0 Merge pull request #869 from jcpowermac/add_vmware_dvswitch_module
Merging for further testing -- New VMware Module to support adding distribute vswitch
2015-08-26 17:49:57 -05:00
Chrrrles Paul
e7fbbc8528 Merge pull request #871 from jcpowermac/add_vmware_host_module
New VMware Module to support adding a ESXi host to vCenter
2015-08-26 17:43:14 -05:00
Chrrrles Paul
091bd6b1ff Merge pull request #868 from mtnbikenc/add_vmware_vmkernel_module
Merging for further testing -- New VMware Module to support adding a VMware vmkernel interface
2015-08-26 17:38:47 -05:00
Chrrrles Paul
d8197a3b7f Merge pull request #866 from jcpowermac/add_vmware_dvs_portgroup_module
New VMware Module to support adding distributed portgroups -- Looks good to me
2015-08-26 17:26:49 -05:00
Brian Coca
c6fe5ced14 Merge pull request #875 from jcpowermac/add_vmware_portgroup_module
New VMware Module to support adding standard portgroups
2015-08-26 07:42:32 -04:00
Brian Coca
3e50a40803 Merge pull request #872 from mtnbikenc/add_vmware_vm_facts_module
New VMware Module to support gathering the list of VMs
2015-08-26 07:40:40 -04:00
Brian Coca
818ff40653 Merge pull request #865 from mtnbikenc/add_vmware_vsan_cluster_module
New VMware Module to support adding a VMware vSAN cluster
2015-08-24 17:22:43 -04:00
Brian Coca
34b6daa843 Merge pull request #864 from jcpowermac/add_vmware_dvs_host_module
New VMware Module to support adding an ESXi host to a distrib switch
2015-08-24 17:20:27 -04:00
Brian Coca
2d66b5708b Merge pull request #863 from mtnbikenc/add_vmware_vswitch_module
New VMware Module to support adding a VMware vSwitch
2015-08-24 17:17:39 -04:00
Joseph Callen
6ca9e7c25f New VMware Module to support adding standard portgroups 2015-08-24 13:58:42 -04:00
Russell Teague
c48945c10e Adding vmware_target_canonical_facts module 2015-08-24 13:55:47 -04:00
Joseph Callen
09a6760c51 New VMware Module to support migrating vmkernel adapter 2015-08-24 13:54:09 -04:00
Russell Teague
c4b0375eb5 Adding vmware_vm_facts module 2015-08-24 13:51:57 -04:00
Joseph Callen
a2e15f07f8 New VMware Module to support adding an ESXi host to vCenter 2015-08-24 13:48:17 -04:00
Russell Teague
d5e3bd770a Adding vmware_vm_vss_dvs_migrate module 2015-08-24 13:48:16 -04:00
Russell Teague
72579ab3e1 Adding vmware_vmkernel module 2015-08-24 13:44:45 -04:00
Joseph Callen
7beea8a152 New VMware Module to support adding distribute vswitch 2015-08-24 13:44:27 -04:00
Russell Teague
6fbadff17c Adding vmware_vmkernel_ip_config module 2015-08-24 13:39:02 -04:00
Joseph Callen
6945519411 New VMware Module to support adding distributed portgroups 2015-08-24 13:38:13 -04:00
Russell Teague
9cb1e214cb Adding vmware_vsan_cluster module 2015-08-24 13:31:36 -04:00
Brian Coca
bbe1fcf443 Merge pull request #862 from jcpowermac/add_vmware_dns_config_module
New VMware Module to support configuring DNS on ESXi hosts
2015-08-24 13:25:22 -04:00
Brian Coca
c4a7221c82 removed empty notes 2015-08-24 13:25:18 -04:00
Joseph Callen
55f59cec54 New VMware Module to support adding an ESXi host to a distributed vswitch 2015-08-24 13:24:32 -04:00
Brian Coca
b0fae45be4 minor doc updates to vmware_cluster 2015-08-24 13:23:27 -04:00
Russell Teague
b82e15a73b This includes a new module for VMware vSphere
Creates a VMware vSwitch

We have an end-to-end playbook that performs bare metal provisioning and
configuration of vSphere.
The playbooks/tasks and results from that testing is what will be listed
in this PR.
If there are any questions please let either @jcpowermac or @mtnbikenc
know.

Tested with version
```
$ ansible-playbook --version
ansible-playbook 1.9.2
  configured module search path = None

```

Associated tasks used for testing below
```
    - name: Add a temporary vSwitch
      local_action:
        module: vmware_vswitch
        hostname: "{{ inventory_hostname }}"
        username: "{{ esxi_username }}"
        password: "{{ site_passwd }}"
        switch_name: temp_vswitch
        nic_name: "{{ vss_vmnic }}"
        mtu: 9000

```

Verbose testing output and results
```
TASK: [Configure ESXi hostname and DNS servers]
*******************************
<127.0.0.1> REMOTE_MODULE vmware_dns_config password=VALUE_HIDDEN
hostname=foundation-esxi-01 change_hostname_to=cscesxtmp001
domainname=lordbusiness.local dns_servers=192.168.70.3,192.168.70.4
username=root
<127.0.0.1> REMOTE_MODULE vmware_dns_config password=VALUE_HIDDEN
hostname=foundation-esxi-02 change_hostname_to=cscesxtmp002
domainname=lordbusiness.local dns_servers=192.168.70.3,192.168.70.4
username=root
<127.0.0.1> REMOTE_MODULE vmware_dns_config password=VALUE_HIDDEN
hostname=foundation-esxi-03 change_hostname_to=cscesxtmp003
domainname=lordbusiness.local dns_servers=192.168.70.3,192.168.70.4
username=root
changed: [foundation-esxi-01 -> 127.0.0.1] => {"changed": true}
changed: [foundation-esxi-03 -> 127.0.0.1] => {"changed": true}
changed: [foundation-esxi-02 -> 127.0.0.1] => {"changed": true}
```
2015-08-24 13:21:41 -04:00
Joseph Callen
b66c62aab0 New VMware Module to support configuring DNS on ESXi hosts 2015-08-24 13:14:37 -04:00
Joseph Callen
9f47f57700 New VMware Module to support adding a cluster to vCenter 2015-08-24 13:10:21 -04:00
Toshio Kuratomi
dce3d4054e Return errno and http status as requested by @bcoca 2015-08-05 09:27:03 -07:00
Jonathan Davila
757b952be4 Doc string fix for vsphere_copy 2015-08-04 07:52:51 -05:00
Toshio Kuratomi
3ec3e77d53 Better status conditional from dagwieers 2015-07-30 13:44:13 -07:00
Toshio Kuratomi
1e18550805 Port vsphere_copy from httplib to open_url for TLS cert validation 2015-07-29 23:15:00 -07:00
Brian Coca
74c20b0639 Merge pull request #748 from bennojoy/vca_nat
Module for modifying nat rules  in vcloud air or vcd
2015-07-28 18:46:07 -04:00
Brian Coca
322c1a871c Merge pull request #747 from bennojoy/vca_fw
Module for modifying firewall rules  in vcloud air or vcd
2015-07-28 18:44:37 -04:00
Benno Joy
abaf4ce59d update license 2015-07-28 15:51:57 +05:30
Benno Joy
047e37a28c update license 2015-07-28 15:49:44 +05:30
Brian Coca
dfdd2bb5ed fixed license and copyright 2015-07-24 23:16:35 -04:00
Brian Coca
e35778feba removed redundant version added 2015-07-24 19:16:52 -04:00
Benno Joy
ff2009136f Module for modifying NAT rules in vcloud or vcd 2015-07-23 15:47:32 +05:30
Benno Joy
71e08d6c3f Module for modifying firewall rules in vcloud or vcd 2015-07-23 15:46:27 +05:30
Benno Joy
85ee695cf3 Module for creating vapp/vm in vcloud or vcd 2015-07-23 15:44:47 +05:30
Matt Martz
9f9422fcb5 Update vsphere_copy.py to use new style module_utils import 2015-06-30 13:45:53 -05:00
Dag Wieers
57e7a6662a Work around a software bug in vSphere
Due to a software bug in vSphere, it fails to handle ampersand in datacenter names.
The solution is to do what vSphere does (when browsing) and double-encode ampersands.

It is likely other characters need special treatment like this as well, haven't found any.
2015-06-29 17:08:48 +02:00
Brian Coca
1604382538 monior docfixes
added extensino to vsphere_copy so it actually installs
2015-06-19 11:04:25 -04:00
Dag Wieers
d0cf9617a5 Spurious newline could corrupt payload
Due to a spurious newline we corrupted the payload. It depends on the order of the headers and if there were headers added by vSphere.

The Accept header was also not needed.
2015-06-19 13:30:29 +02:00
Brian Coca
9db032aa11 minor doc update 2015-06-17 09:42:18 -04:00
Dag Wieers
330e66327a New module to copy (push) files to a vCenter datastore 2015-06-17 14:53:17 +02:00
Greg DeKoenigsberg
004dedba8a Changes to author formatting, remove emails 2015-06-16 14:32:39 -04:00
Toshio Kuratomi
88eff11c04 Many more doc fixes 2015-05-15 12:12:26 -07:00
Greg DeKoenigsberg
dfd227f82c Adding author's github id 2015-05-13 14:40:45 -04:00
Toshio Kuratomi
a589a66710 Update module documentation if modules have a dep on python2.6+ 2015-05-11 10:09:56 -07:00
Brian Coca
3148aafa17 moved new module to proper subdir
fixed doc issues
minor code adjustments
2015-04-22 10:18:34 -04:00