summaryrefslogtreecommitdiff
path: root/test/integration/targets/ipwcli_dns/tasks/main.yml
blob: 8dbac5b0c808ca98a3ccea40ebad5da7a1e3f482 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
# 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