ansible/test/integration/targets/azure_rm_cdnprofile/tasks/main.yml
Yunge Zhu e0af9b2ce0 new module cdnendpoint (#46796)
* new module cdnendpoint
2018-11-28 09:57:04 +08:00

257 lines
6.3 KiB
YAML

- name: Prepare random number
set_fact:
cdnprofilename: "cdnprofile{{ resource_group | hash('md5') | truncate(7, True, '') }}{{ 1000 | random }}"
endpointname: "endpoint{{ resource_group | hash('md5') | truncate(7, True, '') }}{{ 1000 | random }}"
run_once: yes
- name: Create a CDN profile(check mode)
azure_rm_cdnprofile:
resource_group: "{{ resource_group }}"
name: "{{ cdnprofilename }}"
sku: standard_akamai
tags:
testing: testing
delete: on-exit
foo: bar
check_mode: yes
- name: Check there is no CDN profile created
azure_rm_cdnprofile_facts:
resource_group: "{{ resource_group }}"
name: "{{ cdnprofilename }}"
register: fact
- name: Check there is no CDN profile created
assert: { that: "{{ fact.cdnprofiles | length }} == 0" }
- name: Create a CDN profile
azure_rm_cdnprofile:
resource_group: "{{ resource_group }}"
name: "{{ cdnprofilename }}"
sku: standard_akamai
tags:
testing: testing
delete: on-exit
foo: bar
register: output
- name: Assert the CDN profile is well created
assert:
that:
- output.changed
- output.id != ''
- name: Gather CDN profile facts
azure_rm_cdnprofile_facts:
resource_group: "{{ resource_group }}"
name: "{{ cdnprofilename }}"
register: fact
- name: Assert fact returns the created one
assert:
that:
- "fact.cdnprofiles | length == 1"
- fact.cdnprofiles[0].sku == 'Standard_Akamai'
- fact.cdnprofiles[0].tags.foo == 'bar'
- name: Create a CDN profile (idempotent)
azure_rm_cdnprofile:
resource_group: "{{ resource_group }}"
name: "{{ cdnprofilename }}"
sku: standard_akamai
tags:
testing: testing
delete: on-exit
foo: bar
register: output
- name: Assert idempotent
assert:
that:
- not output.changed
- name: Update the CDN profile
azure_rm_cdnprofile:
resource_group: "{{ resource_group }}"
name: "{{ cdnprofilename }}"
sku: standard_akamai
tags:
testing: testing
delete: on-exit
foo: bar
baz: qux
register: output
- name: Assert the CDN profile is updated
assert:
that:
- output.changed
- name: Delete the CDN profile(check mode)
azure_rm_cdnprofile:
resource_group: "{{ resource_group }}"
name: "{{ cdnprofilename }}"
state: absent
check_mode: yes
- name: Gather CDN profile facts
azure_rm_cdnprofile_facts:
resource_group: "{{ resource_group }}"
name: "{{ cdnprofilename }}"
register: fact
- name: Assert the CDN is still there
assert:
that:
- "fact.cdnprofiles | length == 1"
- fact.cdnprofiles[0].sku == 'Standard_Akamai'
- fact.cdnprofiles[0].tags.foo == 'bar'
- fact.cdnprofiles[0].tags.baz == 'qux'
- name: Create a Azure CDN endpoint(check mode)
azure_rm_cdnendpoint:
resource_group: "{{ resource_group }}"
name: "{{ endpointname }}"
profile_name: "{{ cdnprofilename }}"
origins:
- name: "org{{ endpointname }}"
host_name: "www.google.com"
tags:
testing: testing
delete: on-exit
foo: bar
check_mode: yes
- name: Create a Azure CDN endpoint
azure_rm_cdnendpoint:
resource_group: "{{ resource_group }}"
name: "{{ endpointname }}"
profile_name: "{{ cdnprofilename }}"
origins:
- name: "org{{ endpointname }}"
host_name: "www.google.com"
tags:
testing: testing
delete: on-exit
foo: bar
register: output
- name: Assert the Azure CDN endpoint is well created
assert:
that:
- output.changed
- output.id
- name: Create a Azure CDN endpoint(idempotent)
azure_rm_cdnendpoint:
resource_group: "{{ resource_group }}"
name: "{{ endpointname }}"
profile_name: "{{ cdnprofilename }}"
origins:
- name: "org{{ endpointname }}"
host_name: "www.google.com"
tags:
testing: testing
delete: on-exit
foo: bar
register: output
- name: Assert idempotent
assert:
that:
- not output.changed
- name: Stop a Azure CDN endpoint
azure_rm_cdnendpoint:
resource_group: "{{ resource_group }}"
name: "{{ endpointname }}"
profile_name: "{{ cdnprofilename }}"
started: False
register: output
- name: Assert stopped
assert:
that:
- output.changed
- name: Stop a Azure CDN endpoint(idempotent)
azure_rm_cdnendpoint:
resource_group: "{{ resource_group }}"
name: "{{ endpointname }}"
profile_name: "{{ cdnprofilename }}"
started: False
register: output
- name: Assert still stopped and not changed
assert:
that:
- not output.changed
- name: Start a Azure CDN endpoint
azure_rm_cdnendpoint:
resource_group: "{{ resource_group }}"
name: "{{ endpointname }}"
profile_name: "{{ cdnprofilename }}"
started: True
register: output
- name: Assert started
assert:
that:
- output.changed
- name: Update the Azure CDN endpoint
azure_rm_cdnendpoint:
resource_group: "{{ resource_group }}"
name: "{{ endpointname }}"
profile_name: "{{ cdnprofilename }}"
origin_path: /test/
tags:
testing: testing
delete: on-exit
foo: baz
register: output
- name: Assert the Azure CDN endpoint is updated
assert:
that:
- output.changed
- name: Delete a Azure CDN endpoint(check mode)
azure_rm_cdnendpoint:
resource_group: "{{ resource_group }}"
name: "{{ endpointname }}"
profile_name: "{{ cdnprofilename }}"
state: absent
check_mode: yes
- name: Delete a Azure CDN endpoint
azure_rm_cdnendpoint:
resource_group: "{{ resource_group }}"
name: "{{ endpointname }}"
profile_name: "{{ cdnprofilename }}"
state: absent
- name: Delete the CDN profile
azure_rm_cdnprofile:
resource_group: "{{ resource_group }}"
name: "{{ cdnprofilename }}"
state: absent
register: output
- name: Assert the CDN profile is well deleted
assert:
that:
- output.changed
- name: Get CDN profile fact
azure_rm_cdnprofile_facts:
resource_group: "{{ resource_group }}"
name: "{{ cdnprofilename }}"
register: fact
- name: Assert fact returns empty
assert:
that:
- "fact.cdnprofiles | length == 0"