178 lines
4.9 KiB
YAML
178 lines
4.9 KiB
YAML
---
|
|
- set_fact:
|
|
get_ip_script: |
|
|
$adapter = Get-CimInstance -ClassName Win32_NetworkAdapter -Filter "NetConnectionID='{{ network_adapter_name }}'"
|
|
$config = Get-CimInstance -ClassName Win32_NetworkAdapterConfiguration -Filter "Index=$($adapter.DeviceID)"
|
|
$ips = $config.DNSServerSearchOrder
|
|
if ($ips) {
|
|
$config.DNSServerSearchOrder[0]
|
|
$config.DNSServerSearchOrder[1]
|
|
}
|
|
|
|
- name: set a single IPv4 address (check mode)
|
|
win_dns_client:
|
|
adapter_name: '{{ network_adapter_name }}'
|
|
ipv4_addresses: 192.168.34.5
|
|
register: set_single_check
|
|
check_mode: yes
|
|
|
|
- name: get result of set a single IPv4 address (check mode)
|
|
win_shell: '{{ get_ip_script }}'
|
|
changed_when: no
|
|
register: set_single_actual_check
|
|
|
|
- name: assert set a single IPv4 address (check mode)
|
|
assert:
|
|
that:
|
|
- set_single_check is changed
|
|
- set_single_actual_check.stdout_lines == []
|
|
|
|
- name: set a single IPv4 address
|
|
win_dns_client:
|
|
adapter_name: '{{ network_adapter_name }}'
|
|
ipv4_addresses: 192.168.34.5
|
|
register: set_single
|
|
|
|
- name: get result of set a single IPv4 address
|
|
win_shell: '{{ get_ip_script }}'
|
|
changed_when: no
|
|
register: set_single_actual
|
|
|
|
- name: assert set a single IPv4 address
|
|
assert:
|
|
that:
|
|
- set_single is changed
|
|
- set_single_actual.stdout_lines == ["192.168.34.5"]
|
|
|
|
- name: set a single IPv4 address (idempotent)
|
|
win_dns_client:
|
|
adapter_name: '{{ network_adapter_name }}'
|
|
ipv4_addresses: 192.168.34.5
|
|
register: set_single_again
|
|
|
|
- name: assert set a single IPv4 address (idempotent)
|
|
assert:
|
|
that:
|
|
- not set_single_again is changed
|
|
|
|
- name: change IPv4 address to another value (check mode)
|
|
win_dns_client:
|
|
adapter_name: '{{ network_adapter_name }}'
|
|
ipv4_addresses: 192.168.34.6
|
|
register: change_single_check
|
|
check_mode: yes
|
|
|
|
- name: get result of change IPv4 address to another value (check mode)
|
|
win_shell: '{{ get_ip_script }}'
|
|
changed_when: no
|
|
register: check_single_actual_check
|
|
|
|
- name: assert change IPv4 address to another value (check mode)
|
|
assert:
|
|
that:
|
|
- change_single_check is changed
|
|
- check_single_actual_check.stdout_lines == ["192.168.34.5"]
|
|
|
|
- name: change IPv4 address to another value
|
|
win_dns_client:
|
|
adapter_name: '{{ network_adapter_name }}'
|
|
ipv4_addresses: 192.168.34.6
|
|
register: change_single
|
|
|
|
- name: get result of change IPv4 address to another value
|
|
win_shell: '{{ get_ip_script }}'
|
|
changed_when: no
|
|
register: check_single_actual
|
|
|
|
- name: assert change IPv4 address to another value
|
|
assert:
|
|
that:
|
|
- change_single is changed
|
|
- check_single_actual.stdout_lines == ["192.168.34.6"]
|
|
|
|
- name: set multiple IPv4 addresses (check mode)
|
|
win_dns_client:
|
|
adapter_name: '{{ network_adapter_name }}'
|
|
ipv4_addresses:
|
|
- 192.168.34.7
|
|
- 192.168.34.8
|
|
register: set_multiple_check
|
|
check_mode: yes
|
|
|
|
- name: get result of set multiple IPv4 addresses (check mode)
|
|
win_shell: '{{ get_ip_script }}'
|
|
changed_when: no
|
|
register: set_multiple_actual_check
|
|
|
|
- name: assert set multiple IPv4 addresses (check mode)
|
|
assert:
|
|
that:
|
|
- set_multiple_check is changed
|
|
- set_multiple_actual_check.stdout_lines == ["192.168.34.6"]
|
|
|
|
- name: set multiple IPv4 addresses
|
|
win_dns_client:
|
|
adapter_name: '{{ network_adapter_name }}'
|
|
ipv4_addresses:
|
|
- 192.168.34.7
|
|
- 192.168.34.8
|
|
register: set_multiple
|
|
|
|
- name: get result of set multiple IPv4 addresses
|
|
win_shell: '{{ get_ip_script }}'
|
|
changed_when: no
|
|
register: set_multiple_actual
|
|
|
|
- name: assert set multiple IPv4 addresses
|
|
assert:
|
|
that:
|
|
- set_multiple is changed
|
|
- set_multiple_actual.stdout_lines == ["192.168.34.7", "192.168.34.8"]
|
|
|
|
- name: set multiple IPv4 addresses (idempotent)
|
|
win_dns_client:
|
|
adapter_name: '{{ network_adapter_name }}'
|
|
ipv4_addresses:
|
|
- 192.168.34.7
|
|
- 192.168.34.8
|
|
register: set_multiple_again
|
|
|
|
- name: assert set multiple IPv4 addresses (idempotent)
|
|
assert:
|
|
that:
|
|
- not set_multiple_again is changed
|
|
|
|
- name: reset IPv4 DNS back to DHCP (check mode)
|
|
win_dns_client:
|
|
adapter_name: '{{ network_adapter_name }}'
|
|
ipv4_addresses: []
|
|
register: set_dhcp_check
|
|
check_mode: yes
|
|
|
|
- name: get result of reset IPv4 DNS back to DHCP (check mode)
|
|
win_shell: '{{ get_ip_script }}'
|
|
changed_when: no
|
|
register: set_dhcp_actual_check
|
|
|
|
- name: assert reset IPv4 DNS back to DHCP (check mode)
|
|
assert:
|
|
that:
|
|
- set_dhcp_check is changed
|
|
- set_dhcp_actual_check.stdout_lines == ["192.168.34.7", "192.168.34.8"]
|
|
|
|
- name: reset IPv4 DNS back to DHCP
|
|
win_dns_client:
|
|
adapter_name: '{{ network_adapter_name }}'
|
|
ipv4_addresses: []
|
|
register: set_dhcp
|
|
|
|
- name: get result of reset IPv4 DNS back to DHCP
|
|
win_shell: '{{ get_ip_script }}'
|
|
changed_when: no
|
|
register: set_dhcp_actual
|
|
|
|
- name: assert reset IPv4 DNS back to DHCP
|
|
assert:
|
|
that:
|
|
- set_dhcp is changed
|
|
- set_dhcp_actual.stdout_lines == []
|