|
|
|
- name: Prepare random number
|
|
|
|
set_fact:
|
|
|
|
rpfx: "{{ resource_group | hash('md5') | truncate(7, True, '') }}{{ 1000 | random }}"
|
|
|
|
run_once: yes
|
|
|
|
|
|
|
|
- name: Create MySQL Server
|
|
|
|
azure_rm_mysqlserver:
|
|
|
|
resource_group: "{{ resource_group }}"
|
|
|
|
name: mysqlsrv{{ rpfx }}
|
|
|
|
sku:
|
|
|
|
name: GP_Gen4_2
|
|
|
|
tier: GeneralPurpose
|
|
|
|
location: westus
|
|
|
|
storage_mb: 51200
|
|
|
|
enforce_ssl: True
|
|
|
|
admin_username: zimxyz
|
|
|
|
admin_password: Testpasswordxyz12!
|
|
|
|
|
|
|
|
- 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
|
|
|
|
|
|
|
|
- name: Delete instance of MySQL Server
|
|
|
|
azure_rm_mysqlserver:
|
|
|
|
resource_group: "{{ resource_group }}"
|
|
|
|
name: mysqlsrv{{ rpfx }}
|
|
|
|
state: absent
|