--- - name: setup vpc cs_vpc: name: "{{ cs_resource_prefix }}_vpc_ip_address" cidr: 10.10.111.0/16 zone: "{{ cs_common_zone_adv }}" register: vpc - name: verify setup vpc assert: that: - vpc is successful - name: setup clean ip_address with tags cs_ip_address: state: absent vpc: "{{ cs_resource_prefix }}_vpc_ip_address" tags: - key: unique_id value: "86cdce4c-dce7-11e8-8394-00262df3bf70" zone: "{{ cs_common_zone_adv }}" - name: test associate ip_address in vpc with tags in check mode cs_ip_address: vpc: "{{ cs_resource_prefix }}_vpc_ip_address" tags: - key: unique_id value: "86cdce4c-dce7-11e8-8394-00262df3bf70" zone: "{{ cs_common_zone_adv }}" register: ip_address_tag check_mode: yes - name: verify test associate ip_address in vpc with tags in check mode assert: that: - ip_address_tag is successful - ip_address_tag is changed - name: test associate ip_address in vpc with tags cs_ip_address: vpc: "{{ cs_resource_prefix }}_vpc_ip_address" tags: - key: unique_id value: "86cdce4c-dce7-11e8-8394-00262df3bf70" zone: "{{ cs_common_zone_adv }}" register: ip_address_tag - name: verify test associate ip_address in vpc with tags assert: that: - ip_address_tag is successful - ip_address_tag is changed - ip_address_tag.ip_address is defined - ip_address_tag.tags.0.key == "unique_id" - ip_address_tag.tags.0.value == "86cdce4c-dce7-11e8-8394-00262df3bf70" - name: test associate ip_address in vpc with tags idempotence cs_ip_address: vpc: "{{ cs_resource_prefix }}_vpc_ip_address" tags: - key: unique_id value: "86cdce4c-dce7-11e8-8394-00262df3bf70" zone: "{{ cs_common_zone_adv }}" register: ip_address_tag - name: verify test associate ip_address in vpc with tags idempotence assert: that: - ip_address_tag is successful - ip_address_tag is not changed - ip_address_tag.ip_address is defined - ip_address_tag.state == "Allocated" - ip_address_tag.tags.0.key == "unique_id" - ip_address_tag.tags.0.value == "86cdce4c-dce7-11e8-8394-00262df3bf70" - name: test disassociate ip_address in vpc in check mode cs_ip_address: state: absent ip_address: "{{ ip_address_tag.ip_address }}" vpc: "{{ cs_resource_prefix }}_vpc_ip_address" zone: "{{ cs_common_zone_adv }}" check_mode: true register: ip_address - name: verify test disassociate ip_address in vpc in check mode assert: that: - ip_address is successful - ip_address is changed - name: test disassociate ip_address in vpc cs_ip_address: state: absent ip_address: "{{ ip_address_tag.ip_address }}" vpc: "{{ cs_resource_prefix }}_vpc_ip_address" zone: "{{ cs_common_zone_adv }}" register: ip_address - name: verify test disassociate ip_address in vpc assert: that: - ip_address is successful - ip_address is changed - name: test disassociate ip_address in vpc idempotence cs_ip_address: state: absent ip_address: "{{ ip_address_tag.ip_address }}" vpc: "{{ cs_resource_prefix }}_vpc_ip_address" zone: "{{ cs_common_zone_adv }}" register: ip_address - name: verify test disassociate ip_address in vpc idempotence assert: that: - ip_address is successful - ip_address is not changed - name: cleanup vpc cs_vpc: name: "{{ cs_resource_prefix }}_vpc_ip_address" zone: "{{ cs_common_zone_adv }}" state: absent register: vpc - name: verify cleanup vpc assert: that: - vpc is successful