diff options
author | Gaudenz Steinlin <gaudenz@users.noreply.github.com> | 2019-03-12 17:53:49 +0100 |
---|---|---|
committer | René Moser <mail@renemoser.net> | 2019-03-12 17:53:49 +0100 |
commit | 6471e4653de2bff55dca9c0cf488ff897ba011da (patch) | |
tree | c46ce93bb69f541d17e3130571f3077be00ab132 /test/legacy/roles | |
parent | 3e52a6a693f33552766f45b3736728d3d8fe2da3 (diff) | |
download | ansible-6471e4653de2bff55dca9c0cf488ff897ba011da.tar.gz |
Integration test cleanup for cloudscale modules (#53629)
* Integration test cleanup for cloudscale modules
This refactors the cleanup procedure for the integration tests of the
cloudscale_server and cloudscale_volume modules to use an "always"
section for cleanup. The cleanup code also deletes all resources which
contain the test run prefix. This ensures that all resources are cleaned
up regardless of the actual test result which is a prerequisite for
running these tests in CI.
* Move cloudscale_floating_ip tests from legacy to integration
This also adds code to make sure that floating IPs are deleted even if a
test run fails. This is unfortunately not possible for floatint IPv6
networks.
Diffstat (limited to 'test/legacy/roles')
4 files changed, 0 insertions, 134 deletions
diff --git a/test/legacy/roles/cloudscale_floating_ip/defaults/main.yml b/test/legacy/roles/cloudscale_floating_ip/defaults/main.yml deleted file mode 100644 index f318a20f64..0000000000 --- a/test/legacy/roles/cloudscale_floating_ip/defaults/main.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -cloudscale_test_flavor: flex-2 -cloudscale_test_image: debian-9 -cloudscale_test_ssh_key: | - ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDSPmiqkvDH1/+MDAVDZT8381aYqp73Odz8cnD5hegNhqtXajqtiH0umVg7HybX3wt1HjcrwKJovZURcIbbcDvzdH2bnYbF93T4OLXA0bIfuIp6M86x1iutFtXdpN3TTicINrmSXEE2Ydm51iMu77B08ZERjVaToya2F7vC+egfoPvibf7OLxE336a5tPCywavvNihQjL8sjgpDT5AAScjb3YqK/6VLeQ18Ggt8/ufINsYkb+9/Ji/3OcGFeflnDXq80vPUyF3u4iIylob6RSZenC38cXmQB05tRNxS1B6BXCjMRdy0v4pa7oKM2GA4ADKpNrr0RI9ed+peRFwmsclH test@ansible diff --git a/test/legacy/roles/cloudscale_floating_ip/meta/main.yml b/test/legacy/roles/cloudscale_floating_ip/meta/main.yml deleted file mode 100644 index 07faa21776..0000000000 --- a/test/legacy/roles/cloudscale_floating_ip/meta/main.yml +++ /dev/null @@ -1,2 +0,0 @@ -dependencies: - - prepare_tests diff --git a/test/legacy/roles/cloudscale_floating_ip/tasks/floating_ip.yml b/test/legacy/roles/cloudscale_floating_ip/tasks/floating_ip.yml deleted file mode 100644 index 61a7362a00..0000000000 --- a/test/legacy/roles/cloudscale_floating_ip/tasks/floating_ip.yml +++ /dev/null @@ -1,94 +0,0 @@ -- name: Request floating IP - cloudscale_floating_ip: - server: '{{ test01.uuid }}' - ip_version: '{{ item.ip_version }}' - reverse_ptr: '{{ item.reverse_ptr | default(omit) }}' - prefix_length: '{{ item.prefix_length | default(omit) }}' - register: floating_ip -- name: Verify request floating IP - assert: - that: - - floating_ip is successful - - floating_ip is changed - - (item.ip_version == 4 and floating_ip.ip | ipv4) or (item.ip_version == 6 and floating_ip.ip | ipv6) - - floating_ip.server == test01.uuid - -- name: Check floating IP indempotence - cloudscale_floating_ip: - server: '{{ test01.uuid }}' - ip: '{{ floating_ip.ip }}' - register: floating_ip_indempotence -- name: Verify floating IP indempotence - assert: - that: - - floating_ip_indempotence is successful - - floating_ip_indempotence is not changed - - floating_ip_indempotence.server == test01.uuid - -- name: Check network parameter alias - cloudscale_floating_ip: - server: '{{ test01.uuid }}' - network: '{{ floating_ip.ip }}' - register: floating_ip_network -- name: Verify network parameter alias - assert: - that: - - floating_ip_network is successful - -- name: Move floating IP to second server - cloudscale_floating_ip: - server: '{{ test02.uuid }}' - ip: '{{ floating_ip.ip }}' - register: move_ip -- name: Verify move floating IPv4 to second server - assert: - that: - - move_ip is successful - - move_ip is changed - - move_ip.server == test02.uuid - -- name: Fail if server is missing on update - cloudscale_floating_ip: - ip: '{{ floating_ip.ip }}' - register: update_failed - ignore_errors: True -- name: Verify fail if server is missing on update - assert: - that: - - update_failed is failed - - "'Missing required parameter' in update_failed.msg" - -- name: Release floating IP - cloudscale_floating_ip: - ip: '{{ floating_ip.ip }}' - state: 'absent' - register: release_ip -- name: Verify release floating IPs - assert: - that: - - release_ip is successful - - release_ip is changed - - release_ip.state == 'absent' - -- name: Release floating IP indempotence - cloudscale_floating_ip: - ip: '{{ floating_ip.ip }}' - state: 'absent' - register: release_ip -- name: Verify release floating IPs indempotence - assert: - that: - - release_ip is successful - - release_ip is not changed - - release_ip.state == 'absent' - -- name: Fail if server is missing on request - cloudscale_floating_ip: - ip_version: 6 - register: request_failed - ignore_errors: True -- name: Verify fail if server is missing on request - assert: - that: - - request_failed is failed - - "'Missing required parameter' in request_failed.msg" diff --git a/test/legacy/roles/cloudscale_floating_ip/tasks/main.yml b/test/legacy/roles/cloudscale_floating_ip/tasks/main.yml deleted file mode 100644 index fb33e634fe..0000000000 --- a/test/legacy/roles/cloudscale_floating_ip/tasks/main.yml +++ /dev/null @@ -1,33 +0,0 @@ -- name: Cloudscale floating IP tests - block: - - name: Create a server - cloudscale_server: - name: '{{ resource_prefix }}-test01' - flavor: '{{ cloudscale_test_flavor }}' - image: '{{ cloudscale_test_image }}' - ssh_keys: '{{ cloudscale_test_ssh_key }}' - register: test01 - - - name: Create a second server - cloudscale_server: - name: '{{ resource_prefix }}-test02' - flavor: '{{ cloudscale_test_flavor }}' - image: '{{ cloudscale_test_image }}' - ssh_keys: '{{ cloudscale_test_ssh_key }}' - register: test02 - - - include_tasks: floating_ip.yml - with_items: - - { 'ip_version': 4, 'reverse_ptr': 'my-floating-ipv4.example.com' } - - { 'ip_version': 6 } - - { 'ip_version': 6, 'prefix_length': 56 } - - always: - - name: Delete servers - cloudscale_server: - uuid: '{{ item.uuid }}' - state: 'absent' - ignore_errors: True - with_items: - - '{{ test01 }}' - - '{{ test02 }}' |