ansible/test/integration/targets/azure_rm_networkinterface/tasks/main.yml
Yuwei Zhou 6f67d68f5a azure_rm_networkinterface: support the multiple ip configuration (#32882)
* support the mutilple ip configuration

* Update azure_rm_networkinterface.py

* add test

* fix spell

* make the virtual network name more flexiable

* add test

* fix

* fix lint

* add test

* fix parameter

* deprecate the flatten ip configuration

* fix lint

* fix encoding

* fix mirror

* fix

* load model from common
2018-01-24 14:57:08 +10:00

169 lines
No EOL
4.3 KiB
YAML

- name: Create virtual network
azure_rm_virtualnetwork:
resource_group: "{{ resource_group_secondary }}"
name: testnic001
address_prefixes: "10.10.0.0/16"
register: vn
- name: Add subnet
azure_rm_subnet:
resource_group: "{{ resource_group_secondary }}"
name: testnic001
address_prefix: "10.10.0.0/24"
virtual_network: testnic001
- name: Create NIC (check mode)
azure_rm_networkinterface:
resource_group: "{{ resource_group }}"
name: testnic001
virtual_network: "{{ vn.state.id }}"
subnet: testnic001
public_ip_name: testnic001
public_ip_allocation_method: Static
security_group: testnic001
register: output
check_mode: yes
- assert:
that:
- output.changed
- name: Create NIC
azure_rm_networkinterface:
resource_group: "{{ resource_group }}"
name: testnic001
virtual_network: "{{ vn.state.id }}"
subnet: testnic001
public_ip_name: testnic001
public_ip_allocation_method: Static
security_group: testnic001
register: output
- assert:
that:
- output.changed
- output.state.ip_configuration.subnet.name == 'testnic001'
- name: Update the NIC with mutilple ip configurations (check mode)
azure_rm_networkinterface:
resource_group: "{{ resource_group }}"
name: testnic001
security_group: testnic001
virtual_network: "{{ vn.state.id }}"
subnet: testnic001
ip_configurations:
- name: ipconfig-add
public_ip_name: testnic002
- name: default
public_ip_name: testnic001
primary: True
public_ip_allocation_method: Static
- name: ipconfig1
public_ip_name: testnic003
register: output
check_mode: yes
- assert:
that:
- output.changed
- name: Update the NIC with mutilple ip configurations
azure_rm_networkinterface:
resource_group: "{{ resource_group }}"
name: testnic001
security_group: testnic001
virtual_network: "{{ vn.state.id }}"
subnet: testnic001
ip_configurations:
- name: ipconfig-add
public_ip_name: testnic002
- name: default
public_ip_name: testnic001
primary: True
public_ip_allocation_method: Static
- name: ipconfig1
public_ip_name: testnic003
register: output
- assert:
that:
- output.changed
- not output.state.ip_configuration
- output.state.ip_configurations | length == 3
- name: Update the NIC with mutilple ip configurations (idempotent)
azure_rm_networkinterface:
resource_group: "{{ resource_group }}"
name: testnic001
security_group: testnic001
virtual_network: "{{ vn.state.id }}"
subnet: testnic001
ip_configurations:
- name: ipconfig-add
public_ip_name: testnic002
- name: default
public_ip_name: testnic001
primary: True
public_ip_allocation_method: Static
- name: ipconfig1
public_ip_name: testnic003
register: output
- assert:
that:
- not output.changed
- name: Remove one ip configuration
azure_rm_networkinterface:
resource_group: "{{ resource_group }}"
name: testnic001
security_group: testnic001
virtual_network: "{{ vn.state.id }}"
subnet: testnic001
ip_configurations:
- name: ipconfig-add
public_ip_name: testnic002
- name: default
public_ip_name: testnic001
public_ip_allocation_method: Static
primary: True
register: output
- assert:
that:
- not output.state.ip_configuration
- output.state.ip_configurations | length == 2
- name: Delete the NIC (check mode)
azure_rm_networkinterface:
resource_group: "{{ resource_group }}"
name: testnic001
state: absent
check_mode: yes
register: output
- assert:
that:
- output.changed
- name: Delete the NIC
azure_rm_networkinterface:
resource_group: "{{ resource_group }}"
name: testnic001
state: absent
register: output
- assert:
that:
- output.changed
- name: Delete the NIC (idempotent)
azure_rm_networkinterface:
resource_group: "{{ resource_group }}"
name: testnic001
state: absent
register: output
- assert:
that:
- not output.changed