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/roles/test_rax_cbs/tasks/main.yml

352 lines
9.8 KiB
YAML

# ============================================================
- name: Test rax_cbs with no args
rax_cbs:
ignore_errors: true
register: rax_cbs
- name: Validate results of rax_cbs with no args
assert:
that:
- rax_cbs|failed
- 'rax_cbs.msg == "missing required arguments: name"'
# ============================================================
# ============================================================
- name: Test rax_cbs with name
rax_cbs:
name: fail
ignore_errors: true
register: rax_cbs
- name: Validate results of rax_cbs with no args
assert:
that:
- rax_cbs|failed
- rax_cbs.msg == 'No credentials supplied!'
# ============================================================
# ============================================================
- name: Test rax_cbs with name and credentials
rax_cbs:
username: "{{ rackspace_username }}"
api_key: "{{ rackspace_api_key }}"
name: fail
ignore_errors: true
register: rax_cbs
- name: Validate results of rax_cbs with name and credentials
assert:
that:
- rax_cbs|failed
- rax_cbs.msg.startswith('None is not a valid region')
# ============================================================
# ============================================================
- name: Test rax_cbs with creds, region, name and public_key string
rax_cbs:
username: "{{ rackspace_username }}"
api_key: "{{ rackspace_api_key }}"
region: "{{ rackspace_region }}"
name: "{{ resource_prefix }}-1"
wait: true
wait_timeout: "{{ rackspace_wait_timeout }}"
register: rax_cbs
- name: Validate rax_cbs creds, region and name
assert:
that:
- rax_cbs|success
- rax_cbs|changed
- rax_cbs.volume.display_name == "{{ resource_prefix }}-1"
- rax_cbs.volume.attachments == []
- rax_cbs.volume.size == 100
- rax_cbs.volume.volume_type == 'SATA'
- rax_cbs.volume.status == 'available'
- name: Delete integration 1
rax_cbs:
username: "{{ rackspace_username }}"
api_key: "{{ rackspace_api_key }}"
region: "{{ rackspace_region }}"
name: "{{ resource_prefix }}-1"
state: absent
register: rax_cbs
- name: Validate delete integration 1
assert:
that:
- rax_cbs|success
- rax_cbs|changed
- rax_cbs.volume.display_name == "{{ resource_prefix }}-1"
# ============================================================
# ============================================================
- name: Test rax_cbs with creds, region, name and invalid size
rax_cbs:
username: "{{ rackspace_username }}"
api_key: "{{ rackspace_api_key }}"
region: "{{ rackspace_region }}"
name: fail
size: 1
ignore_errors: true
register: rax_cbs
- name: Validate rax_cbs creds, region, name and invalid size
assert:
that:
- rax_cbs|failed
# ============================================================
# ============================================================
- name: Test rax_cbs with creds, region, name and valid size
rax_cbs:
username: "{{ rackspace_username }}"
api_key: "{{ rackspace_api_key }}"
region: "{{ rackspace_region }}"
name: "{{ resource_prefix }}-2"
size: 150
wait: true
wait_timeout: "{{ rackspace_wait_timeout }}"
register: rax_cbs
- name: Validate rax_cbs creds, region and valid size
assert:
that:
- rax_cbs|success
- rax_cbs|changed
- rax_cbs.volume.display_name == "{{ resource_prefix }}-2"
- rax_cbs.volume.attachments == []
- rax_cbs.volume.size == 150
- rax_cbs.volume.volume_type == 'SATA'
- rax_cbs.volume.status == 'available'
- name: Delete integration 2
rax_cbs:
username: "{{ rackspace_username }}"
api_key: "{{ rackspace_api_key }}"
region: "{{ rackspace_region }}"
name: "{{ resource_prefix }}-2"
state: absent
register: rax_cbs
- name: Validate delete integration 2
assert:
that:
- rax_cbs|success
- rax_cbs|changed
- rax_cbs.volume.display_name == "{{ resource_prefix }}-2"
# ============================================================
# ============================================================
- name: Test rax_cbs with creds, region, name and invalid volume_type
rax_cbs:
username: "{{ rackspace_username }}"
api_key: "{{ rackspace_api_key }}"
region: "{{ rackspace_region }}"
name: fail
volume_type: fail
ignore_errors: true
register: rax_cbs
- name: Validate rax_cbs creds, region, name and invalid volume_type
assert:
that:
- rax_cbs|failed
- 'rax_cbs.msg == "value of volume_type must be one of: SSD,SATA, got: fail"'
# ============================================================
# ============================================================
- name: Test rax_cbs with creds, region, name and valid volume_size
rax_cbs:
username: "{{ rackspace_username }}"
api_key: "{{ rackspace_api_key }}"
region: "{{ rackspace_region }}"
name: "{{ resource_prefix }}-3"
volume_type: SSD
wait: true
wait_timeout: "{{ rackspace_wait_timeout }}"
register: rax_cbs
- name: Validate rax_cbs creds, region and valid volume_size
assert:
that:
- rax_cbs|success
- rax_cbs|changed
- rax_cbs.volume.display_name == "{{ resource_prefix }}-3"
- rax_cbs.volume.attachments == []
- rax_cbs.volume.size == 100
- rax_cbs.volume.volume_type == 'SSD'
- rax_cbs.volume.status == 'available'
- name: Delete integration 3
rax_cbs:
username: "{{ rackspace_username }}"
api_key: "{{ rackspace_api_key }}"
region: "{{ rackspace_region }}"
name: "{{ resource_prefix }}-3"
state: absent
register: rax_cbs
- name: Validate delete integration 3
assert:
that:
- rax_cbs|success
- rax_cbs|changed
- rax_cbs.volume.display_name == "{{ resource_prefix }}-3"
# ============================================================
# ============================================================
- name: Test rax_cbs with creds, region, name and description
rax_cbs:
username: "{{ rackspace_username }}"
api_key: "{{ rackspace_api_key }}"
region: "{{ rackspace_region }}"
name: "{{ resource_prefix }}-4"
description: "{{ resource_prefix }}-4 description"
wait: true
wait_timeout: "{{ rackspace_wait_timeout }}"
register: rax_cbs
- name: Validate rax_cbs creds, region and description
assert:
that:
- rax_cbs|success
- rax_cbs|changed
- rax_cbs.volume.display_name == "{{ resource_prefix }}-4"
- rax_cbs.volume.description == '{{ resource_prefix }}-4 description'
- rax_cbs.volume.attachments == []
- rax_cbs.volume.size == 100
- rax_cbs.volume.volume_type == 'SATA'
- rax_cbs.volume.status == 'available'
- name: Delete integration 4
rax_cbs:
username: "{{ rackspace_username }}"
api_key: "{{ rackspace_api_key }}"
region: "{{ rackspace_region }}"
name: "{{ resource_prefix }}-4"
state: absent
register: rax_cbs
- name: Validate delete integration 4
assert:
that:
- rax_cbs|success
- rax_cbs|changed
- rax_cbs.volume.display_name == "{{ resource_prefix }}-4"
# ============================================================
# ============================================================
- name: Test rax_cbs with creds, region, name and meta
rax_cbs:
username: "{{ rackspace_username }}"
api_key: "{{ rackspace_api_key }}"
region: "{{ rackspace_region }}"
name: "{{ resource_prefix }}-5"
meta:
foo: bar
wait: true
wait_timeout: "{{ rackspace_wait_timeout }}"
register: rax_cbs
- name: Validate rax_cbs creds, region and meta
assert:
that:
- rax_cbs|success
- rax_cbs|changed
- rax_cbs.volume.display_name == "{{ resource_prefix }}-5"
- rax_cbs.volume.attachments == []
- rax_cbs.volume.size == 100
- rax_cbs.volume.volume_type == 'SATA'
- rax_cbs.volume.status == 'available'
- rax_cbs.volume.metadata.foo == 'bar'
- name: Delete integration 5
rax_cbs:
username: "{{ rackspace_username }}"
api_key: "{{ rackspace_api_key }}"
region: "{{ rackspace_region }}"
name: "{{ resource_prefix }}-5"
state: absent
register: rax_cbs
- name: Validate delete integration 5
assert:
that:
- rax_cbs|success
- rax_cbs|changed
- rax_cbs.volume.display_name == "{{ resource_prefix }}-5"
# ============================================================
# ============================================================
- name: Test rax_cbs with idempotency 1
rax_cbs:
username: "{{ rackspace_username }}"
api_key: "{{ rackspace_api_key }}"
region: "{{ rackspace_region }}"
name: "{{ resource_prefix }}-6"
wait: true
wait_timeout: "{{ rackspace_wait_timeout }}"
register: rax_cbs_1
- name: Validate rax_cbs with idempotency 1
assert:
that:
- rax_cbs_1|success
- rax_cbs_1|changed
- rax_cbs_1.volume.display_name == "{{ resource_prefix }}-6"
- name: Test rax_cbs with idempotency 2
rax_cbs:
username: "{{ rackspace_username }}"
api_key: "{{ rackspace_api_key }}"
region: "{{ rackspace_region }}"
name: "{{ resource_prefix }}-6"
register: rax_cbs_2
- name: Validate rax_cbs with idempotency 2
assert:
that:
- rax_cbs_2|success
- not rax_cbs_2|changed
- rax_cbs_2.volume.display_name == "{{ resource_prefix }}-6"
- rax_cbs_2.volume.id == rax_cbs_1.volume.id
- name: Delete integration 6
rax_cbs:
username: "{{ rackspace_username }}"
api_key: "{{ rackspace_api_key }}"
region: "{{ rackspace_region }}"
name: "{{ resource_prefix }}-6"
state: absent
register: rax_cbs
- name: Validate delete integration 6
assert:
that:
- rax_cbs|success
- rax_cbs|changed
- rax_cbs.volume.name == "{{ resource_prefix }}-6"
# ============================================================