Files
a13labs.infra/ansible/playbook_mail.yml
T

79 lines
1.9 KiB
YAML
Raw Normal View History

---
- name: Mail Playbook (K8s)
hosts: mail
gather_facts: true
# Specific tasks for this playbook
tasks:
- name: Set required facts
ansible.builtin.set_fact:
mail_home: "{{ persistent_data | default('/var/lib') }}/mail"
log_home: "/var/log"
mail_user_id: 1000
mail_group_id: 1000
dovecot_user_id: 100
dovecot_group_id: 101
postfix_user_id: 100
postfix_group_id: 101
tags: always
- name: Set required facts
ansible.builtin.set_fact:
mail_folders:
- "{{ mail_home }}/getmail"
- "{{ mail_home }}/mailboxes"
tags: always
- name: Create required mail home folder
become: true
ansible.builtin.file:
state: directory
path: "{{ mail_home }}"
mode: "0750"
owner: "{{ mail_user_id }}"
group: "{{ mail_group_id }}"
tags:
- tasks
- tasks::folders
- name: Create required mail folders
become: true
ansible.builtin.file:
state: directory
path: "{{ item }}"
mode: "0750"
owner: "{{ mail_user_id }}"
group: "{{ mail_group_id }}"
loop: "{{ mail_folders }}"
tags:
- tasks
- tasks::folders
- name: Create required postfix folders
become: true
ansible.builtin.file:
state: directory
path: "{{ item }}"
mode: "0750"
owner: "{{ postfix_user_id }}"
group: "{{ postfix_group_id }}"
loop:
- "{{ mail_home }}/postfix"
tags:
- tasks
- tasks::folders
- name: Create required dovecot log
become: true
ansible.builtin.file:
state: directory
path: "{{ item }}"
mode: "0700"
owner: "{{ dovecot_user_id }}"
group: "{{ dovecot_group_id }}"
loop:
- "{{ log_home }}/dovecot"
tags:
- tasks
- tasks::folders