aboutsummaryrefslogtreecommitdiffstats
path: root/roles/dns_records/tasks/main.yml
diff options
context:
space:
mode:
authorStonewall Jackson <stonewall@sacredheartsc.com>2023-02-04 01:23:43 -0500
committerStonewall Jackson <stonewall@sacredheartsc.com>2023-02-04 01:52:13 -0500
commit0261e875679f1bf63c8d689da7fc7e014597885d (patch)
tree3f19cd74a0c1070944f75437f30b098d6ef2ffcb /roles/dns_records/tasks/main.yml
downloadselfhosted-0261e875679f1bf63c8d689da7fc7e014597885d.tar.gz
selfhosted-0261e875679f1bf63c8d689da7fc7e014597885d.zip
initial commit
Diffstat (limited to 'roles/dns_records/tasks/main.yml')
-rw-r--r--roles/dns_records/tasks/main.yml41
1 files changed, 41 insertions, 0 deletions
diff --git a/roles/dns_records/tasks/main.yml b/roles/dns_records/tasks/main.yml
new file mode 100644
index 0000000..c6ef405
--- /dev/null
+++ b/roles/dns_records/tasks/main.yml
@@ -0,0 +1,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 }}'