You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
ansible/test/integration/targets/memset_zone_record/tasks/main.yml

240 lines
5.7 KiB
YAML

- name: create record with incorrect API key
local_action:
module: memset_zone_record
api_key: "wa9aerahhie0eekee9iaphoorovooyia"
state: present
zone: "{{ test_zone }}"
type: A
address: 127.0.0.1
ignore_errors: true
register: result
- assert:
that:
- "'Memset API returned a 403 response (ApiErrorForbidden, Bad api_key)' in result.msg"
- result is not successful
- name: create record in non-existent zone
local_action:
module: memset_zone_record
api_key: "{{ api_key }}"
state: present
zone: "a-non-existent-zone"
type: A
address: 127.0.0.1
ignore_errors: true
register: result
- name: assert that record is not created
assert:
that:
- "'DNS zone a-non-existent-zone does not exist.' in result.msg"
- result is not successful
- name: create record in non-unique zone
local_action:
module: memset_zone_record
api_key: "{{ api_key }}"
state: present
zone: "{{ duplicate_zone }}"
type: A
address: 127.0.0.1
ignore_errors: true
register: result
- name: assert that record is not created
assert:
that:
- "'ansible-dns-zone-dupe matches multiple zones.' in result.msg"
- result is not successful
- name: create record with invalid priority
local_action:
module: memset_zone_record
api_key: "{{ api_key }}"
state: present
zone: "{{ test_zone }}"
type: SRV
address: "0 5269 hostname.example.com"
record: "_jabber._tcp"
priority: 1001
ignore_errors: true
register: result
- name: assert that priority was out of range
assert:
that:
- "'Priority must be in the range 0 > 999 (inclusive).' in result.msg"
- result is not successful
- name: create record with address longer than 250 chars
local_action:
module: memset_zone_record
api_key: "{{ api_key }}"
state: present
zone: "{{ test_zone }}"
type: CNAME
address: "aaa.aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.com"
record: "aaa.ansible.com"
ignore_errors: true
register: result
- name: assert that address was longer than allowed
assert:
that:
- "'Address must be less than 250 characters in length.' in result.msg"
- result is not successful
- name: create record longer than 63 chars
local_action:
module: memset_zone_record
api_key: "{{ api_key }}"
state: present
zone: "{{ test_zone }}"
type: A
address: 127.0.0.1
record: "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
ignore_errors: true
register: result
- name: assert that record was longer than allowed
assert:
that:
- "'Record must be less than 63 characters in length.' in result.msg"
- result is not successful
- name: create record which cannot have relative enabled
local_action:
module: memset_zone_record
api_key: "{{ api_key }}"
state: present
zone: "{{ test_zone }}"
type: A
address: 127.0.0.1
relative: true
ignore_errors: true
register: result
- name: assert that setting relative failed
assert:
that:
- "'Relative is only valid for CNAME, MX, NS and SRV record types' in result.msg"
- result is not successful
- name: test creating valid A record
local_action:
module: memset_zone_record
api_key: "{{ api_key }}"
state: present
zone: "{{ test_zone }}"
type: A
address: 127.0.0.1
record: "www"
check_mode: true
register: result
- name: assert that result would have changed
assert:
that:
- result is changed
- result is successful
- name: actually create valid A record
local_action:
module: memset_zone_record
api_key: "{{ api_key }}"
state: present
zone: "{{ test_zone }}"
type: A
address: 127.0.0.1
record: "www"
register: result
- name: assert that result changed
assert:
that:
- result is changed
- result is successful
- name: create valid SPF record
local_action:
module: memset_zone_record
api_key: "{{ api_key }}"
state: present
zone: "{{ test_zone }}"
type: TXT
address: "v=spf1 +a +mx +ip4:127.0.0.1 ?all"
register: result
- name: assert that result changed
assert:
that:
- result is changed
- result is successful
- name: test deleting A record
local_action:
module: memset_zone_record
api_key: "{{ api_key }}"
state: absent
zone: "{{ test_zone }}"
type: A
address: 127.0.0.1
record: "www"
check_mode: true
register: result
- name: assert that result changed
assert:
that:
- result is changed
- result is successful
- name: actually delete A record
local_action:
module: memset_zone_record
api_key: "{{ api_key }}"
state: absent
zone: "{{ test_zone }}"
type: A
address: 127.0.0.1
record: "www"
register: result
- name: assert that result changed
assert:
that:
- result is changed
- result is successful
- name: delete SPF record
local_action:
module: memset_zone_record
api_key: "{{ api_key }}"
state: absent
zone: "{{ test_zone }}"
type: TXT
address: "v=spf1 +a +mx +ip4:127.0.0.1 ?all"
register: result
- name: assert that result changed
assert:
that:
- result is changed
- result is successful
- name: delete non-existent SPF record
local_action:
module: memset_zone_record
api_key: "{{ api_key }}"
state: absent
zone: "{{ test_zone }}"
type: TXT
address: "v=spf1 +a +mx +ip4:127.0.0.1 ?all"
register: result
- name: assert that result changed
assert:
that:
- result is not changed