158 lines
4.2 KiB
YAML
158 lines
4.2 KiB
YAML
- name: Prepare random number
|
|
set_fact:
|
|
nsgname: "{{ resource_group | hash('md5') | truncate(7, True, '') }}{{ 1000 | random }}"
|
|
storageaccountname: "stacc{{ resource_group | hash('md5') | truncate(7, True, '') }}{{ 1000 | random }}"
|
|
dbname: "mdb{{ resource_group | hash('md5') | truncate(7, True, '') }}{{ 1000 | random }}"
|
|
run_once: yes
|
|
|
|
- name: Call REST API
|
|
azure_rm_resource:
|
|
api_version: '2018-02-01'
|
|
resource_group: "{{ resource_group }}"
|
|
provider: network
|
|
resource_type: networksecuritygroups
|
|
resource_name: "{{ nsgname }}"
|
|
body:
|
|
location: eastus
|
|
idempotency: yes
|
|
register: output
|
|
|
|
- name: Assert that something has changed
|
|
assert:
|
|
that: output.changed
|
|
|
|
- name: Call REST API
|
|
azure_rm_resource:
|
|
api_version: '2018-02-01'
|
|
resource_group: "{{ resource_group }}"
|
|
provider: network
|
|
resource_type: networksecuritygroups
|
|
resource_name: "{{ nsgname }}"
|
|
body:
|
|
location: eastus
|
|
idempotency: yes
|
|
register: output
|
|
|
|
- name: Assert that nothing has changed
|
|
assert:
|
|
that: not output.changed
|
|
|
|
- name: Call REST API
|
|
azure_rm_resource:
|
|
api_version: '2018-02-01'
|
|
resource_group: "{{ resource_group }}"
|
|
provider: network
|
|
resource_type: networksecuritygroups
|
|
resource_name: "{{ nsgname }}"
|
|
body:
|
|
location: eastus
|
|
tags:
|
|
a: "abc"
|
|
b: "cde"
|
|
idempotency: yes
|
|
register: output
|
|
|
|
- name: Assert that something has changed
|
|
assert:
|
|
that: output.changed
|
|
|
|
- name: Try to get information about account
|
|
azure_rm_resource_facts:
|
|
api_version: '2018-02-01'
|
|
resource_group: "{{ resource_group }}"
|
|
provider: network
|
|
resource_type: networksecuritygroups
|
|
resource_name: "{{ nsgname }}"
|
|
register: output
|
|
|
|
- name: Assert value was returned
|
|
assert:
|
|
that:
|
|
- not output.changed
|
|
- output.response[0]['name'] != None
|
|
- output.response | length == 1
|
|
|
|
- name: Try to query a list
|
|
azure_rm_resource_facts:
|
|
api_version: '2018-02-01'
|
|
resource_group: "{{ resource_group }}"
|
|
provider: network
|
|
resource_type: networksecuritygroups
|
|
register: output
|
|
- name: Assert value was returned
|
|
assert:
|
|
that:
|
|
- not output.changed
|
|
- output.response[0]['name'] != None
|
|
- output.response | length >= 1
|
|
|
|
- name: Try to query a list - same without API version
|
|
azure_rm_resource_facts:
|
|
resource_group: "{{ resource_group }}"
|
|
provider: network
|
|
resource_type: networksecuritygroups
|
|
register: output
|
|
- name: Assert value was returned
|
|
assert:
|
|
that:
|
|
- not output.changed
|
|
- output.response[0]['name'] != None
|
|
- output.response | length >= 1
|
|
|
|
- name: Query all the resources in the resource group
|
|
azure_rm_resource_facts:
|
|
resource_group: "{{ resource_group }}"
|
|
resource_type: resources
|
|
register: output
|
|
- name: Assert value was returned
|
|
assert:
|
|
that:
|
|
- not output.changed
|
|
- output.response | length >= 1
|
|
|
|
- name: Create storage account that requires LRO polling
|
|
azure_rm_resource:
|
|
polling_timeout: 600
|
|
polling_interval: 60
|
|
api_version: '2018-07-01'
|
|
resource_group: "{{ resource_group }}"
|
|
provider: Storage
|
|
resource_type: storageAccounts
|
|
resource_name: "{{ storageaccountname }}"
|
|
body:
|
|
sku:
|
|
name: Standard_GRS
|
|
kind: Storage
|
|
location: eastus
|
|
register: output
|
|
|
|
- name: Assert that storage was successfully created
|
|
assert:
|
|
that: "output['response']['name'] == '{{ storageaccountname }}'"
|
|
|
|
|
|
- name: Try to storage keys -- special case when subresource part has no name
|
|
azure_rm_resource:
|
|
resource_group: "{{ resource_group }}"
|
|
provider: storage
|
|
resource_type: storageAccounts
|
|
resource_name: "{{ storageaccountname }}"
|
|
subresource:
|
|
- type: listkeys
|
|
api_version: '2018-03-01-preview'
|
|
method: POST
|
|
register: keys
|
|
|
|
- name: Assert that key was returned
|
|
assert:
|
|
that: keys['response']['keys'][0]['value'] | length > 0
|
|
|
|
- name: Delete storage - without API version
|
|
azure_rm_resource:
|
|
polling_timeout: 600
|
|
polling_interval: 60
|
|
method: DELETE
|
|
resource_group: "{{ resource_group }}"
|
|
provider: Storage
|
|
resource_type: storageAccounts
|
|
resource_name: "{{ storageaccountname }}"
|