2018-01-10 05:39:43 +01:00
|
|
|
- name: Prepare random number
|
|
|
|
set_fact:
|
|
|
|
rpfx: "{{ resource_group | hash('md5') | truncate(7, True, '') }}{{ 1000 | random }}"
|
|
|
|
run_once: yes
|
|
|
|
|
|
|
|
- name: Create instance of MySQL Server -- check mode
|
|
|
|
azure_rm_mysqlserver:
|
|
|
|
resource_group: "{{ resource_group }}"
|
2018-02-01 08:00:05 +01:00
|
|
|
name: mysqlsrv{{ rpfx }}
|
2018-01-10 05:39:43 +01:00
|
|
|
sku:
|
2018-09-10 21:26:04 +02:00
|
|
|
name: B_Gen5_1
|
|
|
|
tier: Basic
|
|
|
|
location: westus2
|
2018-02-01 08:00:05 +01:00
|
|
|
storage_mb: 51200
|
2018-01-10 05:39:43 +01:00
|
|
|
version: 5.6
|
|
|
|
enforce_ssl: True
|
|
|
|
admin_username: zimxyz
|
|
|
|
admin_password: Testpasswordxyz12!
|
|
|
|
check_mode: yes
|
|
|
|
register: output
|
|
|
|
- name: Assert the resource instance is well created
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- output.changed
|
|
|
|
|
|
|
|
- name: Create instance of MySQL Server
|
|
|
|
azure_rm_mysqlserver:
|
|
|
|
resource_group: "{{ resource_group }}"
|
2018-02-01 08:00:05 +01:00
|
|
|
name: mysqlsrv{{ rpfx }}
|
2018-01-10 05:39:43 +01:00
|
|
|
sku:
|
2018-09-10 21:26:04 +02:00
|
|
|
name: B_Gen5_1
|
|
|
|
tier: Basic
|
|
|
|
location: westus2
|
2018-02-01 08:00:05 +01:00
|
|
|
storage_mb: 51200
|
2018-01-10 05:39:43 +01:00
|
|
|
version: 5.6
|
|
|
|
enforce_ssl: True
|
|
|
|
admin_username: zimxyz
|
|
|
|
admin_password: Testpasswordxyz12!
|
|
|
|
register: output
|
|
|
|
- name: Assert the resource instance is well created
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- output.changed
|
|
|
|
- output.state == 'Ready'
|
|
|
|
|
|
|
|
- name: Create again instance of MySQL Server
|
|
|
|
azure_rm_mysqlserver:
|
|
|
|
resource_group: "{{ resource_group }}"
|
2018-02-01 08:00:05 +01:00
|
|
|
name: mysqlsrv{{ rpfx }}
|
2018-01-10 05:39:43 +01:00
|
|
|
sku:
|
2018-09-10 21:26:04 +02:00
|
|
|
name: B_Gen5_1
|
|
|
|
tier: Basic
|
|
|
|
location: westus2
|
2018-02-01 08:00:05 +01:00
|
|
|
storage_mb: 51200
|
2018-01-10 05:39:43 +01:00
|
|
|
version: 5.6
|
|
|
|
enforce_ssl: True
|
|
|
|
admin_username: zimxyz
|
|
|
|
admin_password: Testpasswordxyz12!
|
|
|
|
register: output
|
|
|
|
- name: Assert the state has not changed
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- output.changed == false
|
|
|
|
- output.state == 'Ready'
|
|
|
|
|
2018-08-16 11:10:07 +02:00
|
|
|
- name: Create second instance of MySQL Server
|
|
|
|
azure_rm_mysqlserver:
|
|
|
|
resource_group: "{{ resource_group }}"
|
|
|
|
name: mysqlsrv{{ rpfx }}second
|
|
|
|
sku:
|
2018-09-10 21:26:04 +02:00
|
|
|
name: B_Gen5_1
|
|
|
|
tier: Basic
|
|
|
|
location: westus2
|
2018-08-16 11:10:07 +02:00
|
|
|
storage_mb: 51200
|
|
|
|
version: 5.6
|
|
|
|
enforce_ssl: True
|
|
|
|
admin_username: zimxyz
|
|
|
|
admin_password: Testpasswordxyz12!
|
2018-09-11 08:27:50 +02:00
|
|
|
tags:
|
|
|
|
aaa: bbb
|
|
|
|
|
|
|
|
- name: Create second instance of MySQL Server
|
|
|
|
azure_rm_mysqlserver:
|
|
|
|
resource_group: "{{ resource_group }}"
|
|
|
|
name: mysqlsrv{{ rpfx }}second
|
|
|
|
sku:
|
|
|
|
name: B_Gen5_1
|
|
|
|
tier: Basic
|
|
|
|
location: westus2
|
|
|
|
storage_mb: 51200
|
|
|
|
version: 5.6
|
|
|
|
enforce_ssl: True
|
|
|
|
admin_username: zimxyz
|
|
|
|
admin_password: Testpasswordxyz12!
|
|
|
|
tags:
|
|
|
|
ccc: ddd
|
2018-08-16 11:10:07 +02:00
|
|
|
|
|
|
|
- name: Gather facts MySQL Server
|
|
|
|
azure_rm_mysqlserver_facts:
|
|
|
|
resource_group: "{{ resource_group }}"
|
2018-09-11 08:27:50 +02:00
|
|
|
name: mysqlsrv{{ rpfx }}second
|
2018-08-16 11:10:07 +02:00
|
|
|
register: output
|
|
|
|
|
|
|
|
- name: Assert that facts are returned
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- output.changed == False
|
|
|
|
- output.servers[0]['id'] != None
|
|
|
|
- output.servers[0]['name'] != None
|
|
|
|
- output.servers[0]['location'] != None
|
|
|
|
- output.servers[0]['sku']['name'] != None
|
|
|
|
- output.servers[0]['sku']['tier'] != None
|
|
|
|
- output.servers[0]['sku']['capacity'] != None
|
|
|
|
- output.servers[0]['version'] != None
|
|
|
|
- output.servers[0]['user_visible_state'] != None
|
|
|
|
- output.servers[0]['fully_qualified_domain_name'] != None
|
2018-09-11 08:27:50 +02:00
|
|
|
- output.servers[0]['tags']['aaa'] == 'bbb'
|
|
|
|
- output.servers[0]['tags']['ccc'] == 'ddd'
|
2018-08-16 11:10:07 +02:00
|
|
|
|
|
|
|
- name: Gather facts MySQL Server
|
|
|
|
azure_rm_mysqlserver_facts:
|
|
|
|
resource_group: "{{ resource_group }}"
|
|
|
|
register: output
|
|
|
|
- name: Assert that facts are returned
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- output.changed == False
|
|
|
|
- output.servers[0]['id'] != None
|
|
|
|
- output.servers[0]['name'] != None
|
|
|
|
- output.servers[0]['location'] != None
|
|
|
|
- output.servers[0]['sku']['name'] != None
|
|
|
|
- output.servers[0]['sku']['tier'] != None
|
|
|
|
- output.servers[0]['sku']['capacity'] != None
|
|
|
|
- output.servers[0]['version'] != None
|
|
|
|
- output.servers[0]['user_visible_state'] != None
|
|
|
|
- output.servers[0]['fully_qualified_domain_name'] != None
|
|
|
|
- output.servers[1]['id'] != None
|
|
|
|
- output.servers[1]['name'] != None
|
|
|
|
- output.servers[1]['location'] != None
|
|
|
|
- output.servers[1]['sku']['name'] != None
|
|
|
|
- output.servers[1]['sku']['tier'] != None
|
|
|
|
- output.servers[1]['sku']['capacity'] != None
|
|
|
|
- output.servers[1]['version'] != None
|
|
|
|
- output.servers[1]['user_visible_state'] != None
|
|
|
|
- output.servers[1]['fully_qualified_domain_name'] != None
|
|
|
|
|
2018-09-03 10:52:09 +02:00
|
|
|
#
|
|
|
|
# azure_rm_mysqldatabase tests below
|
|
|
|
#
|
|
|
|
- name: Create instance of MySQL Database -- check mode
|
|
|
|
azure_rm_mysqldatabase:
|
|
|
|
resource_group: "{{ resource_group }}"
|
|
|
|
server_name: mysqlsrv{{ rpfx }}
|
|
|
|
name: testdatabase
|
|
|
|
check_mode: yes
|
|
|
|
register: output
|
|
|
|
- name: Assert the resource instance is well created
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- output.changed
|
|
|
|
|
|
|
|
- name: Create instance of MySQL Database
|
|
|
|
azure_rm_mysqldatabase:
|
|
|
|
resource_group: "{{ resource_group }}"
|
|
|
|
server_name: mysqlsrv{{ rpfx }}
|
|
|
|
name: testdatabase
|
|
|
|
register: output
|
|
|
|
- name: Assert the resource instance is well created
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- output.changed
|
|
|
|
- output.name == 'testdatabase'
|
|
|
|
|
|
|
|
- name: Create again instance of MySQL Database
|
|
|
|
azure_rm_mysqldatabase:
|
|
|
|
resource_group: "{{ resource_group }}"
|
|
|
|
server_name: mysqlsrv{{ rpfx }}
|
|
|
|
name: testdatabase
|
|
|
|
register: output
|
|
|
|
- name: Assert the state has not changed
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- output.changed == false
|
|
|
|
- output.name == 'testdatabase'
|
|
|
|
|
|
|
|
- name: Create second instance of MySQL Database
|
|
|
|
azure_rm_mysqldatabase:
|
|
|
|
resource_group: "{{ resource_group }}"
|
|
|
|
server_name: mysqlsrv{{ rpfx }}
|
|
|
|
name: testdatabase2
|
|
|
|
|
|
|
|
- name: Gather facts MySQL Database
|
|
|
|
azure_rm_mysqldatabase_facts:
|
|
|
|
resource_group: "{{ resource_group }}"
|
|
|
|
server_name: mysqlsrv{{ rpfx }}
|
|
|
|
name: testdatabase
|
|
|
|
register: output
|
|
|
|
|
|
|
|
- name: Assert that facts are returned
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- output.changed == False
|
|
|
|
- output.databases[0]['server_name'] != None
|
|
|
|
- output.databases[0]['name'] != None
|
|
|
|
- output.databases[0]['charset'] != None
|
|
|
|
- output.databases[0]['collation'] != None
|
|
|
|
|
|
|
|
- name: Gather facts MySQL Database
|
|
|
|
azure_rm_mysqldatabase_facts:
|
|
|
|
resource_group: "{{ resource_group }}"
|
|
|
|
server_name: mysqlsrv{{ rpfx }}
|
|
|
|
register: output
|
|
|
|
- name: Assert that facts are returned
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- output.changed == False
|
|
|
|
- output.databases[0]['server_name'] != None
|
|
|
|
- output.databases[0]['name'] != None
|
|
|
|
- output.databases[0]['charset'] != None
|
|
|
|
- output.databases[0]['collation'] != None
|
|
|
|
- output.databases[1]['server_name'] != None
|
|
|
|
- output.databases[1]['name'] != None
|
|
|
|
- output.databases[1]['charset'] != None
|
|
|
|
- output.databases[1]['collation'] != None
|
|
|
|
|
|
|
|
- name: Delete instance of MySQL Database -- check mode
|
|
|
|
azure_rm_mysqldatabase:
|
|
|
|
resource_group: "{{ resource_group }}"
|
|
|
|
server_name: mysqlsrv{{ rpfx }}
|
|
|
|
name: testdatabase
|
|
|
|
state: absent
|
|
|
|
check_mode: yes
|
|
|
|
register: output
|
|
|
|
- name: Assert the state has changed
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- output.changed
|
|
|
|
|
|
|
|
- name: Delete instance of MySQL Database
|
|
|
|
azure_rm_mysqldatabase:
|
|
|
|
resource_group: "{{ resource_group }}"
|
|
|
|
server_name: mysqlsrv{{ rpfx }}
|
|
|
|
name: testdatabase
|
|
|
|
state: absent
|
|
|
|
register: output
|
|
|
|
- name: Assert the state has changed
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- output.changed
|
|
|
|
|
|
|
|
- name: Delete unexisting instance of MySQL Database
|
|
|
|
azure_rm_mysqldatabase:
|
|
|
|
resource_group: "{{ resource_group }}"
|
|
|
|
server_name: mysqlsrv{{ rpfx }}
|
|
|
|
name: testdatabase
|
|
|
|
state: absent
|
|
|
|
register: output
|
|
|
|
- name: Assert the state has changed
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- output.changed == false
|
|
|
|
|
|
|
|
#
|
2018-10-15 19:11:26 +02:00
|
|
|
# azure_rm_firewallrule tests below
|
|
|
|
#
|
|
|
|
- name: Create instance of Firewall Rule -- check mode
|
|
|
|
azure_rm_mysqlfirewallrule:
|
|
|
|
resource_group: "{{ resource_group }}"
|
|
|
|
server_name: mysqlsrv{{ rpfx }}
|
|
|
|
name: firewallrule{{ rpfx }}
|
|
|
|
start_ip_address: 172.28.10.136
|
|
|
|
end_ip_address: 172.28.10.138
|
|
|
|
check_mode: yes
|
|
|
|
register: output
|
|
|
|
- name: Assert the resource instance is well created
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- output.changed
|
|
|
|
|
|
|
|
- name: Create instance of Firewall Rule
|
|
|
|
azure_rm_mysqlfirewallrule:
|
|
|
|
resource_group: "{{ resource_group }}"
|
|
|
|
server_name: mysqlsrv{{ rpfx }}
|
|
|
|
name: firewallrule{{ rpfx }}
|
|
|
|
start_ip_address: 172.28.10.136
|
|
|
|
end_ip_address: 172.28.10.138
|
|
|
|
register: output
|
|
|
|
- name: Assert the resource instance is well created
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- output.changed
|
|
|
|
|
|
|
|
- name: Create again instance of Firewall Rule
|
|
|
|
azure_rm_mysqlfirewallrule:
|
|
|
|
resource_group: "{{ resource_group }}"
|
|
|
|
server_name: mysqlsrv{{ rpfx }}
|
|
|
|
name: firewallrule{{ rpfx }}
|
|
|
|
start_ip_address: 172.28.10.136
|
|
|
|
end_ip_address: 172.28.10.138
|
|
|
|
register: output
|
|
|
|
- name: Assert the state has not changed
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- output.changed == false
|
|
|
|
|
|
|
|
- name: Delete instance of Firewall Rule -- check mode
|
|
|
|
azure_rm_mysqlfirewallrule:
|
|
|
|
resource_group: "{{ resource_group }}"
|
|
|
|
server_name: mysqlsrv{{ rpfx }}
|
|
|
|
name: firewallrule{{ rpfx }}
|
|
|
|
state: absent
|
|
|
|
check_mode: yes
|
|
|
|
register: output
|
|
|
|
- name: Assert the state has changed
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- output.changed
|
|
|
|
|
2018-10-25 04:10:12 +02:00
|
|
|
- name: Create instance of Firewall Rule -- second
|
|
|
|
azure_rm_mysqlfirewallrule:
|
|
|
|
resource_group: "{{ resource_group }}"
|
|
|
|
server_name: mysqlsrv{{ rpfx }}
|
|
|
|
name: firewallrule{{ rpfx }}second
|
|
|
|
start_ip_address: 172.28.10.136
|
|
|
|
end_ip_address: 172.28.10.138
|
|
|
|
register: output
|
|
|
|
- name: Assert the state has changed
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- output.changed
|
|
|
|
|
|
|
|
- name: Gather facts MySQL Firewall Rule
|
|
|
|
azure_rm_mysqlfirewallrule_facts:
|
|
|
|
resource_group: "{{ resource_group }}"
|
|
|
|
server_name: mysqlsrv{{ rpfx }}
|
|
|
|
name: firewallrule{{ rpfx }}
|
|
|
|
register: output
|
|
|
|
- name: Assert that facts are returned
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- output.changed == False
|
|
|
|
- output.rules[0].id != None
|
|
|
|
- output.rules[0].server_name != None
|
|
|
|
- output.rules[0].name != None
|
|
|
|
- output.rules[0].start_ip_address != None
|
|
|
|
- output.rules[0].end_ip_address != None
|
|
|
|
- "output.rules | length == 1"
|
|
|
|
|
|
|
|
- name: Gather facts MySQL Firewall Rule
|
|
|
|
azure_rm_mysqlfirewallrule_facts:
|
|
|
|
resource_group: "{{ resource_group }}"
|
|
|
|
server_name: mysqlsrv{{ rpfx }}
|
|
|
|
register: output
|
|
|
|
- name: Assert that facts are returned
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- output.changed == False
|
|
|
|
- output.rules[0].id != None
|
|
|
|
- output.rules[0].server_name != None
|
|
|
|
- output.rules[0].name != None
|
|
|
|
- output.rules[0].start_ip_address != None
|
|
|
|
- output.rules[0].end_ip_address != None
|
|
|
|
- output.rules[1].id != None
|
|
|
|
- output.rules[1].name != None
|
|
|
|
- output.rules[1].start_ip_address != None
|
|
|
|
- output.rules[1].end_ip_address != None
|
|
|
|
- "output.rules | length == 2"
|
|
|
|
|
2018-10-15 19:11:26 +02:00
|
|
|
- name: Delete instance of Firewall Rule
|
|
|
|
azure_rm_mysqlfirewallrule:
|
|
|
|
resource_group: "{{ resource_group }}"
|
|
|
|
server_name: mysqlsrv{{ rpfx }}
|
|
|
|
name: firewallrule{{ rpfx }}
|
|
|
|
state: absent
|
|
|
|
register: output
|
|
|
|
- name: Assert the state has changed
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- output.changed
|
|
|
|
|
|
|
|
- name: Delete unexisting instance of Firewall Rule
|
|
|
|
azure_rm_mysqlfirewallrule:
|
|
|
|
resource_group: "{{ resource_group }}"
|
|
|
|
server_name: mysqlsrv{{ rpfx }}
|
|
|
|
name: firewallrule{{ rpfx }}
|
|
|
|
state: absent
|
|
|
|
register: output
|
|
|
|
- name: Assert the state has changed
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- output.changed == false
|
|
|
|
|
2018-10-25 04:10:12 +02:00
|
|
|
- name: Delete instance of Firewall Rule - second
|
|
|
|
azure_rm_mysqlfirewallrule:
|
|
|
|
resource_group: "{{ resource_group }}"
|
|
|
|
server_name: mysqlsrv{{ rpfx }}
|
|
|
|
name: firewallrule{{ rpfx }}second
|
|
|
|
state: absent
|
|
|
|
|
|
|
|
- name: Gather facts MySQL Firewall Rule
|
|
|
|
azure_rm_mysqlfirewallrule_facts:
|
|
|
|
resource_group: "{{ resource_group }}"
|
|
|
|
server_name: mysqlsrv{{ rpfx }}
|
|
|
|
name: firewallrule{{ rpfx }}
|
|
|
|
register: output
|
|
|
|
- name: Assert that empty list was returned
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- output.changed == False
|
|
|
|
- "output.rules | length == 0"
|
|
|
|
|
2018-10-15 19:11:26 +02:00
|
|
|
#
|
|
|
|
# clean up azure_rm_mysqlserver test
|
2018-09-03 10:52:09 +02:00
|
|
|
#
|
2018-09-11 08:27:50 +02:00
|
|
|
|
2018-01-10 05:39:43 +01:00
|
|
|
- name: Delete instance of MySQL Server -- check mode
|
|
|
|
azure_rm_mysqlserver:
|
|
|
|
resource_group: "{{ resource_group }}"
|
2018-02-01 08:00:05 +01:00
|
|
|
name: mysqlsrv{{ rpfx }}
|
2018-01-10 05:39:43 +01:00
|
|
|
state: absent
|
|
|
|
check_mode: yes
|
|
|
|
register: output
|
|
|
|
- name: Assert the state has changed
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- output.changed
|
|
|
|
|
|
|
|
- name: Delete instance of MySQL Server
|
|
|
|
azure_rm_mysqlserver:
|
|
|
|
resource_group: "{{ resource_group }}"
|
2018-02-01 08:00:05 +01:00
|
|
|
name: mysqlsrv{{ rpfx }}
|
2018-01-10 05:39:43 +01:00
|
|
|
state: absent
|
|
|
|
register: output
|
|
|
|
- name: Assert the state has changed
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- output.changed
|
|
|
|
|
|
|
|
- name: Delete unexisting instance of MySQL Server
|
|
|
|
azure_rm_mysqlserver:
|
|
|
|
resource_group: "{{ resource_group }}"
|
2018-02-01 08:00:05 +01:00
|
|
|
name: mysqlsrv{{ rpfx }}
|
2018-01-10 05:39:43 +01:00
|
|
|
state: absent
|
2018-09-11 08:27:50 +02:00
|
|
|
register: output
|
|
|
|
- name: Assert the state has changed
|
|
|
|
assert:
|
|
|
|
that:
|
|
|
|
- output.changed == false
|
|
|
|
|
|
|
|
- name: Delete second instance of MySQL Server
|
|
|
|
azure_rm_mysqlserver:
|
|
|
|
resource_group: "{{ resource_group }}"
|
|
|
|
name: mysqlsrv{{ rpfx }}second
|
|
|
|
state: absent
|
2018-09-11 04:20:27 +02:00
|
|
|
async: 400
|
|
|
|
poll: 0
|