aboutsummaryrefslogtreecommitdiffstats
path: root/roles/dns_records/tasks/main.yml
blob: c6ef405fe7299ad3fdfe434f281a57084175d16a (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
- name: create A record
  ipadnsrecord:
    ipaadmin_principal: '{{ ipa_user }}'
    ipaadmin_password: '{{ ipa_pass }}'
    zone_name: "{{ dns_fqdn | regex_replace('^[^.]+\\.', '') }}"
    record_name: '{{ dns_fqdn | split(".") | first }}'
    record_type: A
    record_value: "{{ dns_ip }}"
    state: present
  delegate_to: '{{ freeipa_master }}'

- name: create reverse DNS zone
  ipadnszone:
    ipaadmin_principal: '{{ ipa_user }}'
    ipaadmin_password: '{{ ipa_pass }}'
    zone_name: "{{ dns_ip | ansible.utils.ipaddr('revdns') | regex_replace('^[^.]+\\.', '') }}"
    state: present
  delegate_to: '{{ freeipa_master }}'

- name: create PTR record
  ipadnsrecord:
    ipaadmin_principal: '{{ ipa_user }}'
    ipaadmin_password: '{{ ipa_pass }}'
    zone_name: "{{ dns_ip | ansible.utils.ipaddr('revdns') | regex_replace('^[^.]+\\.', '') }}"
    record_name: '{{ dns_ip | split(".") | last }}'
    record_type: PTR
    record_value: '{{ dns_fqdn if dns_fqdn[-1] == "." else (dns_fqdn ~ ".") }}'
    state: present
  delegate_to: '{{ freeipa_master }}'

- name: create CNAME records
  ipadnsrecord:
    ipaadmin_principal: '{{ ipa_user }}'
    ipaadmin_password: '{{ ipa_pass }}'
    zone_name: "{{ item | regex_replace('^[^.]+\\.', '') }}"
    record_name: '{{ item | split(".") | first }}'
    record_type: CNAME
    record_value: '{{ dns_fqdn if dns_fqdn[-1] == "." else (dns_fqdn ~ ".") }}'
    state: present
  delegate_to: '{{ freeipa_master }}'
  loop: '{{ dns_cnames }}'