cloudstack: cs_instance_nic: add integration tests

This commit is contained in:
Rene Moser 2017-07-07 13:47:44 +02:00 committed by René Moser
parent 4183d77c70
commit 89be01f2a2
3 changed files with 311 additions and 0 deletions

View file

@ -0,0 +1,2 @@
cloud/cs
posix/ci/cloud/cs

View file

@ -0,0 +1,3 @@
---
dependencies:
- cs_common

View file

@ -0,0 +1,306 @@
---
- name: setup network
cs_network:
name: "net_nic"
zone: "{{ cs_common_zone_adv }}"
network_offering: DefaultSharedNetworkOffering
network_domain: example.com
vlan: 1234
start_ip: 10.100.123.11
end_ip: 10.100.123.250
gateway: 10.100.123.1
netmask: 255.255.255.0
register: net
- name: verify setup network
assert:
that:
- net|success
- net.name == "net_nic"
- name: setup instance
cs_instance:
name: "instance-nic-vm"
template: "{{ cs_common_template }}"
service_offering: "{{ cs_common_service_offering }}"
zone: "{{ cs_common_zone_adv }}"
network: "net_nic"
state: stopped
register: instance
- name: verify setup instance
assert:
that:
- instance|success
- instance.name == "instance-nic-vm"
- instance.state == "Stopped"
- name: setup network 2
cs_network:
name: "net_nic2"
zone: "{{ cs_common_zone_adv }}"
network_offering: DefaultSharedNetworkOffering
network_domain: example.com
vlan: 1235
start_ip: 10.100.124.11
end_ip: 10.100.124.250
gateway: 10.100.124.1
netmask: 255.255.255.0
register: net
- name: verify setup network 2
assert:
that:
- net|success
- net.name == "net_nic2"
- name: setup absent nic
cs_instance_nic:
vm: "instance-nic-vm"
network: "net_nic2"
zone: "{{ cs_common_zone_adv }}"
state: absent
register: nic
- name: verify setup absent nic
assert:
that:
- nic|success
- name: test fail missing params
cs_instance_nic:
ignore_errors: true
register: nic
- name: verify test fail missing params
assert:
that:
- nic|failed
- "nic.msg.startswith('missing required arguments: ')"
- name: test create nic in check mode
cs_instance_nic:
vm: "instance-nic-vm"
network: "net_nic2"
zone: "{{ cs_common_zone_adv }}"
check_mode: yes
register: nic
- name: verify test create nic in check mode
assert:
that:
- nic|success
- nic|changed
- nic.network == "net_nic2"
- nic.vm == "instance-nic-vm"
- nic.zone == "{{ cs_common_zone_adv }}"
- name: test create nic
cs_instance_nic:
vm: "instance-nic-vm"
network: "net_nic2"
ip_address: 10.100.124.42
zone: "{{ cs_common_zone_adv }}"
register: nic
- name: verify test create nic
assert:
that:
- nic|success
- nic|changed
- nic.ip_address == "10.100.124.42"
- nic.netmask == "255.255.255.0"
- nic.network == "net_nic2"
- nic.vm == "instance-nic-vm"
- nic.zone == "{{ cs_common_zone_adv }}"
- nic.mac_address is defined
- name: test create nic idempotence
cs_instance_nic:
vm: "instance-nic-vm"
network: "net_nic2"
ip_address: 10.100.124.42
zone: "{{ cs_common_zone_adv }}"
register: nic
- name: verify test create nic idempotence
assert:
that:
- nic|success
- not nic|changed
- nic.ip_address == "10.100.124.42"
- nic.netmask == "255.255.255.0"
- nic.network == "net_nic2"
- nic.vm == "instance-nic-vm"
- nic.zone == "{{ cs_common_zone_adv }}"
- nic.mac_address is defined
- name: test create nic without ip address idempotence
cs_instance_nic:
vm: "instance-nic-vm"
network: "net_nic2"
zone: "{{ cs_common_zone_adv }}"
register: nic
- name: verify test create nic without ip address idempotence
assert:
that:
- nic|success
- not nic|changed
- nic.ip_address == "10.100.124.42"
- nic.netmask == "255.255.255.0"
- nic.network == "net_nic2"
- nic.vm == "instance-nic-vm"
- nic.zone == "{{ cs_common_zone_adv }}"
- nic.mac_address is defined
- name: test update nic in check mode
cs_instance_nic:
vm: "instance-nic-vm"
network: "net_nic2"
ip_address: 10.100.124.23
zone: "{{ cs_common_zone_adv }}"
check_mode: yes
register: nic
- name: verify test update nic in check mode
assert:
that:
- nic|success
- nic|changed
- nic.ip_address == "10.100.124.42"
- nic.netmask == "255.255.255.0"
- nic.network == "net_nic2"
- nic.vm == "instance-nic-vm"
- nic.zone == "{{ cs_common_zone_adv }}"
- nic.mac_address is defined
- name: test update nic
cs_instance_nic:
vm: "instance-nic-vm"
network: "net_nic2"
ip_address: 10.100.124.23
zone: "{{ cs_common_zone_adv }}"
register: nic
- name: verify test update nic
assert:
that:
- nic|success
- nic|changed
- nic.ip_address == "10.100.124.23"
- nic.netmask == "255.255.255.0"
- nic.network == "net_nic2"
- nic.vm == "instance-nic-vm"
- nic.zone == "{{ cs_common_zone_adv }}"
- nic.mac_address is defined
- name: test update nic idempotence
cs_instance_nic:
vm: "instance-nic-vm"
network: "net_nic2"
ip_address: 10.100.124.23
zone: "{{ cs_common_zone_adv }}"
register: nic
- name: verify test update nic idempotence
assert:
that:
- nic|success
- not nic|changed
- nic.ip_address == "10.100.124.23"
- nic.netmask == "255.255.255.0"
- nic.network == "net_nic2"
- nic.vm == "instance-nic-vm"
- nic.zone == "{{ cs_common_zone_adv }}"
- nic.mac_address is defined
- name: test update nic without ip address idempotence
cs_instance_nic:
vm: "instance-nic-vm"
network: "net_nic2"
zone: "{{ cs_common_zone_adv }}"
register: nic
- name: verify test update nic without ip address idempotence
assert:
that:
- nic|success
- not nic|changed
- nic.ip_address == "10.100.124.23"
- nic.netmask == "255.255.255.0"
- nic.network == "net_nic2"
- nic.vm == "instance-nic-vm"
- nic.zone == "{{ cs_common_zone_adv }}"
- nic.mac_address is defined
- name: test remove nic in check mode
cs_instance_nic:
vm: "instance-nic-vm"
network: "net_nic2"
zone: "{{ cs_common_zone_adv }}"
state: absent
check_mode: yes
register: nic
- name: verify test remove nic in check mode
assert:
that:
- nic|success
- nic|changed
- nic.ip_address == "10.100.124.23"
- nic.netmask == "255.255.255.0"
- nic.network == "net_nic2"
- nic.vm == "instance-nic-vm"
- nic.zone == "{{ cs_common_zone_adv }}"
- nic.mac_address is defined
- name: test remove nic
cs_instance_nic:
vm: "instance-nic-vm"
network: "net_nic2"
zone: "{{ cs_common_zone_adv }}"
state: absent
register: nic
- name: verify test remove nic
assert:
that:
- nic|success
- nic|changed
- nic.ip_address == "10.100.124.23"
- nic.netmask == "255.255.255.0"
- nic.network == "net_nic2"
- nic.vm == "instance-nic-vm"
- nic.zone == "{{ cs_common_zone_adv }}"
- nic.mac_address is defined
- name: test remove nic idempotence
cs_instance_nic:
vm: "instance-nic-vm"
network: "net_nic2"
zone: "{{ cs_common_zone_adv }}"
state: absent
register: nic
- name: verify test remove nic idempotence
assert:
that:
- nic|success
- not nic|changed
- name: cleanup instance
cs_instance:
name: "instance-nic-vm"
state: expunged
register: instance
- name: verify cleanup instance
assert:
that:
- instance|success
- name: cleanup network
cs_network:
name: "net_nic"
zone: "{{ cs_common_zone_adv }}"
state: absent
register: net
- name: verify cleanup network
assert:
that:
- net|success
- name: cleanup network 2
cs_network:
name: "net_nic2"
zone: "{{ cs_common_zone_adv }}"
state: absent
register: net
- name: verify cleanup network 2
assert:
that:
- net|success