Merge pull request #55730 from goneri/vmware_refact_part5

vmware: refactoring of vmware test roles -- part5
This commit is contained in:
Gonéri Le Bouder 2019-05-02 09:28:17 -04:00 committed by GitHub
parent 39d1794ed9
commit 636f8cbdab
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
52 changed files with 1428 additions and 2319 deletions

View file

@ -1,2 +1,3 @@
cloud/vcenter
unsupported
shippable/vcenter/group1
needs/target/prepare_vmware_tests

View file

@ -2,119 +2,91 @@
# Copyright: (c) 2018, Christian Kotte <christian.kotte@gmx.de>
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
- name: Wait for Flask controller to come up online
wait_for:
host: "{{ vcsim }}"
port: 5000
state: started
- name: kill vcsim
uri:
url: http://{{ vcsim }}:5000/killall
- name: start vcsim
uri:
url: http://{{ vcsim }}:5000/spawn?cluster=2
register: vcsim_instance
- debug:
var: vcsim_instance
- name: Wait for vcsim server to come up online
wait_for:
host: "{{ vcsim }}"
port: 443
state: started
- name: get a list of clusters from vcsim
uri:
url: http://{{ vcsim }}:5000/govc_find?filter=CCR
register: clusters
- name: get a cluster
set_fact:
ccr1: "{{ clusters.json[0] | basename }}"
- name: get a list of hosts from vcsim
uri:
url: http://{{ vcsim }}:5000/govc_find?filter=H
register: hosts
- name: get a host
set_fact:
host1: "{{ hosts.json[0] | basename }}"
- debug: var=ccr1
- debug: var=host1
# Hyperthreading optimization is not available for hosts in vcsim
- import_role:
name: prepare_vmware_tests
vars:
setup_attach_host: true
- name: Disable Hyperthreading for a given host
- name: Enable Hyperthreading everywhere
vmware_host_hyperthreading:
hostname: "{{ vcsim }}"
username: "{{ vcsim_instance.json.username }}"
password: "{{ vcsim_instance.json.password }}"
esxi_hostname: "{{ host1 }}"
hostname: "{{ vcenter_hostname }}"
username: "{{ vcenter_username }}"
password: "{{ vcenter_password }}"
validate_certs: no
state: disabled
register: host_hyperthreading_facts
register: enable_hyperthreading_everywhere
ignore_errors: true
- debug: var=host_hyperthreading_facts
- when: enable_hyperthreading_everywhere is succeeded
block:
- assert:
that:
- host_hyperthreading_facts is defined
- host_hyperthreading_facts.changed
- name: Disable Hyperthreading for a given host
vmware_host_hyperthreading:
hostname: "{{ vcenter_hostname }}"
username: "{{ vcenter_username }}"
password: "{{ vcenter_password }}"
esxi_hostname: '{{ hostvars[esxi1].ansible_host }}'
validate_certs: no
state: disabled
register: host_hyperthreading_facts
- name: Disable Hyperthreading for a given host in check mode
vmware_host_hyperthreading:
hostname: "{{ vcsim }}"
username: "{{ vcsim_instance.json.username }}"
password: "{{ vcsim_instance.json.password }}"
esxi_hostname: "{{ host1 }}"
validate_certs: no
state: disabled
register: host_hyperthreading_facts_check_mode
check_mode: yes
- debug: var=host_hyperthreading_facts
- debug: var=host_hyperthreading_facts_check_mode
- assert:
that:
- host_hyperthreading_facts is defined
- host_hyperthreading_facts.changed
- assert:
that:
- host_hyperthreading_facts_check_mode is defined
- host_hyperthreading_facts_check_mode.changed
- name: Disable Hyperthreading for a given host in check mode
vmware_host_hyperthreading:
hostname: "{{ vcenter_hostname }}"
username: "{{ vcenter_username }}"
password: "{{ vcenter_password }}"
esxi_hostname: '{{ hostvars[esxi1].ansible_host }}'
validate_certs: no
state: disabled
register: host_hyperthreading_facts_check_mode
check_mode: yes
- name: Disable Hyperthreading for all hosts in given cluster
vmware_host_hyperthreading:
hostname: "{{ vcsim }}"
username: "{{ vcsim_instance.json.username }}"
password: "{{ vcsim_instance.json.password }}"
cluster_name: "{{ ccr1 }}"
validate_certs: no
state: disabled
register: host_hyperthreading_facts
- debug: var=host_hyperthreading_facts_check_mode
- debug: var=host_hyperthreading_facts
- assert:
that:
- host_hyperthreading_facts_check_mode is defined
- assert:
that:
- host_hyperthreading_facts is defined
- host_hyperthreading_facts.changed
- name: Disable Hyperthreading for all hosts in given cluster
vmware_host_hyperthreading:
hostname: "{{ vcenter_hostname }}"
username: "{{ vcenter_username }}"
password: "{{ vcenter_password }}"
cluster_name: "{{ ccr1 }}"
validate_certs: no
state: disabled
register: host_hyperthreading_facts
- name: Disable Hyperthreading for all hosts in given cluster in check mode
vmware_host_hyperthreading:
hostname: "{{ vcsim }}"
username: "{{ vcsim_instance.json.username }}"
password: "{{ vcsim_instance.json.password }}"
cluster_name: "{{ ccr1 }}"
validate_certs: no
state: disabled
register: host_hyperthreading_facts_check_mode
check_mode: yes
- debug: var=host_hyperthreading_facts
- debug: var=host_hyperthreading_facts_check_mode
- assert:
that:
- host_hyperthreading_facts is defined
- host_hyperthreading_facts is changed
- assert:
that:
- host_hyperthreading_facts_check_mode is defined
- host_hyperthreading_facts_check_mode.changed
- name: Enable Hyperthreading for all hosts in given cluster in check mode
vmware_host_hyperthreading:
hostname: "{{ vcenter_hostname }}"
username: "{{ vcenter_username }}"
password: "{{ vcenter_password }}"
cluster_name: "{{ ccr1 }}"
validate_certs: no
state: enabled
register: host_hyperthreading_facts_check_mode
check_mode: yes
- debug: var=host_hyperthreading_facts_check_mode
- assert:
that:
- host_hyperthreading_facts_check_mode is defined
- host_hyperthreading_facts_check_mode.changed