linderhof/roles/dns/tasks/extra_mail_domain.yml

62 lines
1.6 KiB
YAML
Raw Permalink Normal View History

---
- name: "{{ extra_domain }} A record"
hetzner.hcloud.zone_rrset:
zone: "{{ extra_domain }}"
name: "@"
type: A
ttl: 300
records:
- value: "{{ server_ip }}"
labels: "{{ hcloud_labels }}"
api_token: "{{ hcloud_token }}"
state: present
- name: "{{ extra_domain }} MX record"
hetzner.hcloud.zone_rrset:
zone: "{{ extra_domain }}"
name: "@"
type: MX
ttl: 300
records:
- value: "10 {{ mail_hostname }}."
labels: "{{ hcloud_labels }}"
api_token: "{{ hcloud_token }}"
state: present
- name: "{{ extra_domain }} SPF record"
hetzner.hcloud.zone_rrset:
zone: "{{ extra_domain }}"
name: "@"
type: TXT
ttl: 300
records:
- value: "{{ 'v=spf1 mx -all' | hetzner.hcloud.txt_record }}"
labels: "{{ hcloud_labels }}"
api_token: "{{ hcloud_token }}"
state: present
- name: "{{ extra_domain }} DMARC record"
hetzner.hcloud.zone_rrset:
zone: "{{ extra_domain }}"
name: _dmarc
type: TXT
ttl: 300
records:
- value: "{{ ('v=DMARC1; p=none; rua=mailto:dmarc@' + extra_domain) | hetzner.hcloud.txt_record }}"
labels: "{{ hcloud_labels }}"
api_token: "{{ hcloud_token }}"
state: present
- name: "{{ extra_domain }} DKIM record"
hetzner.hcloud.zone_rrset:
zone: "{{ extra_domain }}"
name: mail._domainkey
type: TXT
ttl: 300
records:
- value: "{{ dkim_keys[extra_domain] | hetzner.hcloud.txt_record }}"
labels: "{{ hcloud_labels }}"
api_token: "{{ hcloud_token }}"
state: present
when: dkim_keys is defined and extra_domain in dkim_keys