2018-07-27 10:03:43 +02:00
|
|
|
# Test code for the vmware_guest_custom_attributes module.
|
|
|
|
# Copyright: (c) 2018, Abhijeet Kasurde <akasurde@redhat.com>
|
|
|
|
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
|
|
|
|
|
|
|
|
# TODO: Current pinned version of vcsim does not support custom fields
|
|
|
|
# commenting testcase below
|
2019-04-24 19:58:09 +02:00
|
|
|
- import_role:
|
|
|
|
name: prepare_vmware_tests
|
|
|
|
vars:
|
|
|
|
setup_attach_host: true
|
|
|
|
setup_datastore: true
|
|
|
|
setup_virtualmachines: true
|
2018-07-27 10:03:43 +02:00
|
|
|
- name: Add custom attribute to the given virtual machine
|
|
|
|
vmware_guest_custom_attributes:
|
|
|
|
validate_certs: False
|
2019-04-24 19:58:09 +02:00
|
|
|
hostname: '{{ vcenter_hostname }}'
|
|
|
|
username: '{{ vcenter_username }}'
|
|
|
|
password: '{{ vcenter_password }}'
|
|
|
|
datacenter: "{{ dc1 }}"
|
2019-05-16 15:36:48 +02:00
|
|
|
name: "{{ virtual_machines[0].name }}"
|
|
|
|
folder: "{{ virtual_machines[0].folder }}"
|
2018-07-27 10:03:43 +02:00
|
|
|
state: present
|
|
|
|
attributes:
|
|
|
|
- name: 'sample_1'
|
|
|
|
value: 'sample_1_value'
|
|
|
|
- name: 'sample_2'
|
|
|
|
value: 'sample_2_value'
|
|
|
|
- name: 'sample_3'
|
|
|
|
value: 'sample_3_value'
|
2019-08-26 20:45:34 +02:00
|
|
|
register: guest_info_0001
|
2018-07-27 10:03:43 +02:00
|
|
|
|
2019-08-26 20:45:34 +02:00
|
|
|
- debug: var=guest_info_0001
|
2018-07-27 10:03:43 +02:00
|
|
|
|
|
|
|
- assert:
|
|
|
|
that:
|
2019-08-26 20:45:34 +02:00
|
|
|
- guest_info_0001 is changed
|
2018-07-27 10:03:43 +02:00
|
|
|
|
|
|
|
- name: Add custom attribute to the given virtual machine again
|
|
|
|
vmware_guest_custom_attributes:
|
|
|
|
validate_certs: False
|
2019-04-24 19:58:09 +02:00
|
|
|
hostname: '{{ vcenter_hostname }}'
|
|
|
|
username: '{{ vcenter_username }}'
|
|
|
|
password: '{{ vcenter_password }}'
|
|
|
|
datacenter: "{{ dc1 }}"
|
2019-05-16 15:36:48 +02:00
|
|
|
name: "{{ virtual_machines[0].name }}"
|
|
|
|
folder: "{{ virtual_machines[0].folder }}"
|
2018-07-27 10:03:43 +02:00
|
|
|
state: present
|
|
|
|
attributes:
|
|
|
|
- name: 'sample_1'
|
|
|
|
value: 'sample_1_value'
|
|
|
|
- name: 'sample_2'
|
|
|
|
value: 'sample_2_value'
|
|
|
|
- name: 'sample_3'
|
|
|
|
value: 'sample_3_value'
|
2019-08-26 20:45:34 +02:00
|
|
|
register: guest_info_0002
|
2018-07-27 10:03:43 +02:00
|
|
|
|
2019-08-26 20:45:34 +02:00
|
|
|
- debug: var=guest_info_0002
|
2018-07-27 10:03:43 +02:00
|
|
|
|
|
|
|
- assert:
|
|
|
|
that:
|
2019-08-26 20:45:34 +02:00
|
|
|
- not (guest_info_0002 is changed)
|
2018-07-27 10:03:43 +02:00
|
|
|
|
|
|
|
- name: Remove custom attribute to the given virtual machine
|
|
|
|
vmware_guest_custom_attributes:
|
|
|
|
validate_certs: False
|
2019-04-24 19:58:09 +02:00
|
|
|
hostname: '{{ vcenter_hostname }}'
|
|
|
|
username: '{{ vcenter_username }}'
|
|
|
|
password: '{{ vcenter_password }}'
|
|
|
|
datacenter: "{{ dc1 }}"
|
2019-05-16 15:36:48 +02:00
|
|
|
name: "{{ virtual_machines[0].name }}"
|
|
|
|
folder: "{{ virtual_machines[0].folder }}"
|
2018-07-27 10:03:43 +02:00
|
|
|
state: absent
|
|
|
|
attributes:
|
|
|
|
- name: 'sample_1'
|
|
|
|
- name: 'sample_2'
|
|
|
|
- name: 'sample_3'
|
2019-08-26 20:45:34 +02:00
|
|
|
register: guest_info_0004
|
2018-07-27 10:03:43 +02:00
|
|
|
|
2019-08-26 20:45:34 +02:00
|
|
|
- debug: msg="{{ guest_info_0004 }}"
|
2018-07-27 10:03:43 +02:00
|
|
|
|
|
|
|
- assert:
|
|
|
|
that:
|
2019-08-26 20:45:34 +02:00
|
|
|
- "guest_info_0004.changed"
|
2018-07-27 10:03:43 +02:00
|
|
|
|
|
|
|
# TODO: vcsim returns duplicate values so removing custom attributes
|
|
|
|
# results in change. vCenter show correct behavior. Commenting this
|
|
|
|
# till this is supported by vcsim.
|
2019-04-24 19:58:09 +02:00
|
|
|
- when: vcsim is not defined
|
|
|
|
block:
|
|
|
|
- name: Remove custom attribute to the given virtual machine again
|
|
|
|
vmware_guest_custom_attributes:
|
|
|
|
validate_certs: False
|
|
|
|
hostname: '{{ vcenter_hostname }}'
|
|
|
|
username: '{{ vcenter_username }}'
|
|
|
|
password: '{{ vcenter_password }}'
|
|
|
|
datacenter: "{{ dc1 }}"
|
2019-05-16 15:36:48 +02:00
|
|
|
name: "{{ virtual_machines[0].name }}"
|
|
|
|
folder: "{{ virtual_machines[0].folder }}"
|
2019-04-24 19:58:09 +02:00
|
|
|
state: absent
|
|
|
|
attributes:
|
|
|
|
- name: 'sample_1'
|
|
|
|
- name: 'sample_2'
|
|
|
|
- name: 'sample_3'
|
2019-08-26 20:45:34 +02:00
|
|
|
register: guest_info_0005
|
2019-04-24 19:58:09 +02:00
|
|
|
|
2019-08-26 20:45:34 +02:00
|
|
|
- debug: var=guest_info_0005
|
2019-04-24 19:58:09 +02:00
|
|
|
|
|
|
|
- assert:
|
|
|
|
that:
|
2019-08-26 20:45:34 +02:00
|
|
|
- not (guest_info_0005 is changed)
|