--- - name: setup cs_volume: zone: "{{ cs_common_zone_adv }}" name: "{{ cs_resource_prefix }}_upload" state: absent register: uploaded_vol - name: verify setup assert: that: - uploaded_vol is successful - name: setup network cs_network: name: "cs_volume_network" zone: "{{ cs_common_zone_adv }}" network_offering: DefaultSharedNetworkOffering vlan: 2435 start_ip: 10.100.129.11 end_ip: 10.100.129.250 gateway: 10.100.129.1 netmask: 255.255.255.0 register: net - name: verify setup network assert: that: - net is successful - net.name == "cs_volume_network" - name: setup instance cs_instance: zone: "{{ cs_common_zone_adv }}" name: "{{ test_cs_instance_3 }}" template: "{{ test_cs_instance_template }}" service_offering: "{{ test_cs_instance_offering_1 }}" network: cs_volume_network register: instance - name: verify setup instance assert: that: - instance is successful - name: setup stop instance cs_instance: zone: "{{ cs_common_zone_adv }}" name: "{{ test_cs_instance_3 }}" state: stopped register: instance - name: verify stop instance assert: that: - instance is successful - instance.state == 'Stopped' - name: setup get instance info cs_instance_info: name: "{{ test_cs_instance_3 }}" register: instance - name: verify setup get instance info assert: that: - instance is successful - name: test extract volume in check mode cs_volume: zone: "{{ cs_common_zone_adv }}" state: extracted name: "{{ instance.instances[0].volumes[0].name }}" check_mode: yes register: extracted_vol - name: verify test extract volume in check mode assert: that: - extracted_vol is successful - extracted_vol is changed - extracted_vol.state == "Ready" - extracted_vol.name == "{{ instance.instances[0].volumes[0].name }}" - extracted_vol.url is not defined - name: test extract volume cs_volume: zone: "{{ cs_common_zone_adv }}" state: extracted name: "{{ instance.instances[0].volumes[0].name }}" register: extracted_vol - name: verify test extract volume assert: that: - extracted_vol is successful - extracted_vol is changed - extracted_vol.state == "DOWNLOAD_URL_CREATED" - extracted_vol.name == "{{ instance.instances[0].volumes[0].name }}" - extracted_vol.url is defined - name: test upload volume with missing param cs_volume: zone: "{{ cs_common_zone_adv }}" state: uploaded name: "{{ cs_resource_prefix }}_upload" url: "{{ test_cs_volume_to_upload }}" ignore_errors: yes register: uploaded_vol - name: verify upload volume with missing param assert: that: - uploaded_vol is failed - uploaded_vol is not changed - 'uploaded_vol.msg == "state is uploaded but all of the following are missing: format"' - name: test upload volume in check mode cs_volume: zone: "{{ cs_common_zone_adv }}" state: uploaded name: "{{ cs_resource_prefix }}_upload" format: VHD url: "{{ test_cs_volume_to_upload }}" check_mode: yes register: uploaded_vol - name: verify upload volume in check mode assert: that: - uploaded_vol is successful - uploaded_vol is changed - uploaded_vol.name is not defined - name: test upload volume cs_volume: zone: "{{ cs_common_zone_adv }}" state: uploaded name: "{{ cs_resource_prefix }}_upload" format: VHD url: "{{ test_cs_volume_to_upload }}" register: uploaded_vol - name: verify upload volume assert: that: - uploaded_vol is successful - uploaded_vol is changed - uploaded_vol.name == "{{ cs_resource_prefix }}_upload" - uploaded_vol.state == "Uploaded" - name: test upload volume idempotence cs_volume: zone: "{{ cs_common_zone_adv }}" state: uploaded name: "{{ cs_resource_prefix }}_upload" format: VHD url: "{{ test_cs_volume_to_upload }}" register: uploaded_vol - name: verify upload volume idempotence assert: that: - uploaded_vol is successful - uploaded_vol is not changed - uploaded_vol.name == "{{ cs_resource_prefix }}_upload" - uploaded_vol.state == "Uploaded" - name: delete volume cs_volume: zone: "{{ cs_common_zone_adv }}" state: absent name: "{{ cs_resource_prefix }}_upload" register: uploaded_vol - name: verify delete volume assert: that: - uploaded_vol is successful - uploaded_vol is changed - name: destroy instance cs_instance: zone: "{{ cs_common_zone_adv }}" name: "{{ test_cs_instance_3 }}" state: expunged register: instance - name: verify destroy instance assert: that: - instance is successful - name: delete network cs_network: name: "cs_volume_network" zone: "{{ cs_common_zone_adv }}" state: absent register: net - name: verify delete network assert: that: - net is successful