ansible/test/integration/targets/ipwcli_dns/tasks/main.yml
CWollinger 274a07e7c7
Add module ipwcli_dns.py to manage DNS records on Ericsson IPWorks (#67135)
* Create ipwcli_dns.py

* add newline at the end

* Update after review and support AAAA

* Update lib/ansible/modules/net_tools/ipwcli_dns.py

Co-Authored-By: Felix Fontein <felix@fontein.de>

* add integration tests and change param user to username

Co-authored-by: Felix Fontein <felix@fontein.de>
2020-02-16 15:05:44 +01:00

106 lines
2.7 KiB
YAML

# Test code for ipwcli_dns
- name: variables username, password, container, tld must be set
fail:
msg: 'Please set the variables: username, password, container and tld.'
when: username is not defined or password is not defined or container is not defined or tld is not defined
- name: add a new A record
ipwcli_dns:
dnsname: example.{{ tld }}
type: A
container: '{{ container }}'
address: 127.0.0.1
ttl: 100
username: '{{ username }}'
password: '{{ password }}'
register: result
- name: assert the new A record is added
assert:
that:
- result is not failed
- result is changed
- result.record == 'arecord example.{{ tld }} 127.0.0.1 -set ttl=100;container={{ container }}'
- name: delete the A record
ipwcli_dns:
dnsname: example.{{ tld }}
type: A
container: '{{ container }}'
address: 127.0.0.1
ttl: 100
username: '{{ username }}'
password: '{{ password }}'
state: absent
register: result
- name: assert the new A record is deleted
assert:
that:
- result is not failed
- result is changed
- result.record == 'arecord example.{{ tld }} 127.0.0.1 -set ttl=100;container={{ container }}'
- name: delete not existing SRV record
ipwcli_dns:
dnsname: _sip._tcp.test.example.{{ tld }}
type: SRV
container: '{{ container }}'
target: example.{{ tld }}
port: 5060
username: '{{ username }}'
password: '{{ password }}'
state: absent
register: result
- name: assert the new a record
assert:
that:
- result is not failed
- result is not changed
- result.record ==
'srvrecord _sip._tcp.test.example.{{ tld }} -set ttl=3600;container={{ container }};priority=10;weight=10;port=5060;target=example.{{ tld }}'
- name: add a SRV record with weight > 65535 against RFC 2782
ipwcli_dns:
dnsname: _sip._tcp.test.example.{{ tld }}
type: SRV
container: '{{ container }}'
ttl: 100
target: example.{{ tld }}
port: 5060
weight: 65536
username: '{{ username }}'
password: '{{ password }}'
register: result
ignore_errors: yes
- name: assert the failure of the new SRV record
assert:
that:
- result is failed
- result is not changed
- "'Out of UINT16 range' in result.stderr"
- name: add NAPTR record (check_mode)
ipwcli_dns:
dnsname: test.example.{{ tld }}
type: NAPTR
preference: 10
container: '{{ container }}'
ttl: 100
order: 10
service: 'SIP+D2T'
replacement: '_sip._tcp.test.example.{{ tld }}.'
flags: S
username: '{{ username }}'
password: '{{ password }}'
check_mode: yes
register: result
- name: assert the NAPTR check_mode
assert:
that:
- result is not failed
- result is changed