You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
ansible/test/integration/targets/cs_host/tasks/main.yml

420 lines
11 KiB
YAML

---
- name: test fail missing params
cs_host:
register: host
ignore_errors: true
- name: verify test fail missing url if host is not existent
assert:
that:
- host|failed
- 'host.msg == "missing required arguments: name"'
- name: test fail missing params if host is not existent
cs_host:
name: sim
register: host
ignore_errors: true
- name: verify test fail missing params if host is not existent
assert:
that:
- host|failed
- 'host.msg == "missing required arguments: password,username,hypervisor,pod"'
- name: test create a host in check mode
cs_host:
name: sim
url: "http://sim/c0-basic/h2"
cluster: C0-basic
pod: POD0-basic
username: root
password: password
hypervisor: Simulator
allocation_state: enabled
host_tags:
- perf
- gpu
register: host
check_mode: true
- name: verify test create a host in check mode
assert:
that:
- host|changed
- name: test create a host
cs_host:
name: sim
url: "http://sim/c0-basic/h2"
cluster: C0-basic
pod: POD0-basic
username: root
password: password
hypervisor: Simulator
allocation_state: enabled
host_tags:
- perf
- gpu
register: host
- name: verify test create a host
assert:
that:
- host|changed
- host.cluster == 'C0-basic'
- host.pod == 'POD0-basic'
- host.hypervisor == 'Simulator'
- host.allocation_state == 'enabled'
- host.zone == 'Sandbox-simulator-basic'
- host.state == 'Up'
- "host.name.startswith('SimulatedAgent.')"
- host.host_tags == ['perf', 'gpu']
# This is special in simulator mode, we can not predict the full hostname.
# That is why we gather the infos from the returns and use a fact.
- name: assume the sim would resolve to the IP address
set_fact:
host_hostname: "{{ host.name }}"
host_ip_address: "{{ host.ip_address }}"
- name: test create a host idempotence
cs_host:
name: "{{ host_hostname }}"
url: "http://sim/c0-basic/h2"
cluster: C0-basic
pod: POD0-basic
username: admin
password: password
hypervisor: Simulator
allocation_state: enabled
host_tags:
- perf
- gpu
register: host
- name: verify test create a host idempotence
assert:
that:
- not host|changed
- host.cluster == 'C0-basic'
- host.pod == 'POD0-basic'
- host.hypervisor == 'Simulator'
- host.allocation_state == 'enabled'
- host.zone == 'Sandbox-simulator-basic'
- host.state == 'Up'
- host.name == '{{ host_hostname }}'
- host.host_tags == ['perf', 'gpu']
- name: test update host in check mode
cs_host:
name: "{{ host_hostname }}"
url: "http://sim/c0-basic/h2"
cluster: C0-basic
pod: POD0-basic
username: admin
password: password
hypervisor: Simulator
allocation_state: enabled
host_tags:
- perf
- gpu
- x2
register: host
check_mode: true
- name: verify test update a host in check mode
assert:
that:
- host|changed
- host.cluster == 'C0-basic'
- host.pod == 'POD0-basic'
- host.hypervisor == 'Simulator'
- host.allocation_state == 'enabled'
- host.zone == 'Sandbox-simulator-basic'
- host.state == 'Up'
- host.name == '{{ host_hostname }}'
- host.host_tags == ['perf', 'gpu']
- name: test update host
cs_host:
name: "{{ host_hostname }}"
url: "http://sim/c0-basic/h2"
cluster: C0-basic
pod: POD0-basic
username: admin
password: password
hypervisor: Simulator
allocation_state: enabled
host_tags:
- perf
- gpu
- x2
register: host
- name: verify test update a host in check mode
assert:
that:
- host|changed
- host.cluster == 'C0-basic'
- host.pod == 'POD0-basic'
- host.hypervisor == 'Simulator'
- host.allocation_state == 'enabled'
- host.zone == 'Sandbox-simulator-basic'
- host.state == 'Up'
- host.name == '{{ host_hostname }}'
- host.host_tags == ['perf', 'gpu', 'x2']
- name: test update host idempotence
cs_host:
name: "{{ host_hostname }}"
url: "http://sim/c0-basic/h2"
cluster: C0-basic
pod: POD0-basic
username: admin
password: password
hypervisor: Simulator
allocation_state: enabled
host_tags:
- perf
- gpu
- x2
register: host
- name: verify test update a host idempotence
assert:
that:
- not host|changed
- host.cluster == 'C0-basic'
- host.pod == 'POD0-basic'
- host.hypervisor == 'Simulator'
- host.allocation_state == 'enabled'
- host.zone == 'Sandbox-simulator-basic'
- host.state == 'Up'
- host.name == '{{ host_hostname }}'
- host.host_tags == ['perf', 'gpu', 'x2']
# FIXME: Removing by empty list seems to be an issue in the used lib cs underneath, disabled
- name: test update host remove host_tags
cs_host:
name: "{{ host_hostname }}"
url: "http://sim/c0-basic/h2"
cluster: C0-basic
pod: POD0-basic
username: admin
password: password
hypervisor: Simulator
allocation_state: enabled
host_tags: []
register: host
when: false
- name: verify test update host remove host_tags
assert:
that:
- host|changed
- host.host_tags|length == 0
- host.cluster == 'C0-basic'
- host.pod == 'POD0-basic'
- host.hypervisor == 'Simulator'
- host.allocation_state == 'enabled'
- host.zone == 'Sandbox-simulator-basic'
- host.state == 'Up'
- host.name == '{{ host_hostname }}'
when: false
# FIXME: Removing by empty list seems to be an issue in the used lib cs underneath, disabled
- name: test update host remove host_tags idempotence
cs_host:
name: "{{ host_hostname }}"
url: "http://sim/c0-basic/h2"
cluster: C0-basic
pod: POD0-basic
username: admin
password: password
hypervisor: Simulator
allocation_state: enabled
host_tags: []
register: host
when: false
- name: verify test update host remove host_tags idempotence
assert:
that:
- not host|changed
- len(host.host_tags) == 0
- host.cluster == 'C0-basic'
- host.pod == 'POD0-basic'
- host.hypervisor == 'Simulator'
- host.allocation_state == 'enabled'
- host.zone == 'Sandbox-simulator-basic'
- host.state == 'Up'
- host.name == '{{ host_hostname }}'
when: false
- name: test put host in maintenance in check mode
cs_host:
name: "{{ host_hostname }}"
cluster: C0-basic
pod: POD0-basic
allocation_state: maintenance
check_mode: true
register: host
- name: verify test put host in maintenance in check mode
assert:
that:
- host|changed
- host.cluster == 'C0-basic'
- host.pod == 'POD0-basic'
- host.hypervisor == 'Simulator'
- host.allocation_state == 'enabled'
- host.zone == 'Sandbox-simulator-basic'
- host.state == 'Up'
- host.name == '{{ host_hostname }}'
- host.host_tags == ['perf', 'gpu', 'x2']
- name: test put host in maintenance
cs_host:
name: "{{ host_hostname }}"
cluster: C0-basic
pod: POD0-basic
allocation_state: maintenance
register: host
- name: verify test put host in maintenance
assert:
that:
- host|changed
- host.cluster == 'C0-basic'
- host.pod == 'POD0-basic'
- host.hypervisor == 'Simulator'
- host.allocation_state == 'maintenance'
- host.zone == 'Sandbox-simulator-basic'
- host.state == 'Up'
- host.name == '{{ host_hostname }}'
- host.host_tags == ['perf', 'gpu', 'x2']
- name: test put host in maintenance idempotence
cs_host:
name: "{{ host_hostname }}"
cluster: C0-basic
pod: POD0-basic
allocation_state: maintenance
register: host
- name: verify test put host in maintenance idempotence
assert:
that:
- not host|changed
- host.cluster == 'C0-basic'
- host.pod == 'POD0-basic'
- host.hypervisor == 'Simulator'
- host.allocation_state == 'maintenance'
- host.zone == 'Sandbox-simulator-basic'
- host.state == 'Up'
- host.name == '{{ host_hostname }}'
- host.host_tags == ['perf', 'gpu', 'x2']
- name: test put host out of maintenance in check mode
cs_host:
name: "{{ host_hostname }}"
cluster: C0-basic
pod: POD0-basic
allocation_state: enabled
check_mode: true
register: host
- name: verify test put host out of maintenance in check mode
assert:
that:
- host|changed
- host.cluster == 'C0-basic'
- host.pod == 'POD0-basic'
- host.hypervisor == 'Simulator'
- host.allocation_state == 'maintenance'
- host.zone == 'Sandbox-simulator-basic'
- host.state == 'Up'
- host.name == '{{ host_hostname }}'
- host.host_tags == ['perf', 'gpu', 'x2']
- name: test put host out of maintenance
cs_host:
name: "{{ host_hostname }}"
cluster: C0-basic
pod: POD0-basic
allocation_state: enabled
register: host
- name: verify test put host out of maintenance
assert:
that:
- host|changed
- host.cluster == 'C0-basic'
- host.pod == 'POD0-basic'
- host.hypervisor == 'Simulator'
- host.allocation_state == 'enabled'
- host.zone == 'Sandbox-simulator-basic'
- host.state == 'Up'
- host.name == '{{ host_hostname }}'
- host.host_tags == ['perf', 'gpu', 'x2']
- name: test put host out of maintenance idempotence
cs_host:
name: "{{ host_hostname }}"
cluster: C0-basic
pod: POD0-basic
allocation_state: enabled
register: host
- name: verify test put host out of maintenance idempotence
assert:
that:
- not host|changed
- host.cluster == 'C0-basic'
- host.pod == 'POD0-basic'
- host.hypervisor == 'Simulator'
- host.allocation_state == 'enabled'
- host.zone == 'Sandbox-simulator-basic'
- host.state == 'Up'
- host.name == '{{ host_hostname }}'
- host.host_tags == ['perf', 'gpu', 'x2']
- name: test remove host in check mode
cs_host:
name: "{{ host_hostname }}"
cluster: C0-basic
pod: POD0-basic
state: absent
check_mode: true
register: host
- name: verify test remove a host in check mode
assert:
that:
- host|changed
- host.cluster == 'C0-basic'
- host.pod == 'POD0-basic'
- host.hypervisor == 'Simulator'
- host.allocation_state == 'enabled'
- host.zone == 'Sandbox-simulator-basic'
- host.state == 'Up'
- host.name == '{{ host_hostname }}'
- host.host_tags == ['perf', 'gpu', 'x2']
- name: test remove host
cs_host:
name: "{{ host_hostname }}"
cluster: C0-basic
pod: POD0-basic
state: absent
register: host
- name: verify test remove a host
assert:
that:
- host|changed
- host.cluster == 'C0-basic'
- host.pod == 'POD0-basic'
- host.hypervisor == 'Simulator'
- host.allocation_state == 'enabled'
- host.zone == 'Sandbox-simulator-basic'
- host.state == 'Up'
- host.name == '{{ host_hostname }}'
- host.host_tags == ['perf', 'gpu', 'x2']
- name: test remove host idempotence
cs_host:
name: "{{ host_hostname }}"
cluster: C0-basic
pod: POD0-basic
state: absent
register: host
- name: verify test remove a host idempotenc
assert:
that:
- not host|changed