Initial commit
This commit is contained in:
commit
a5e756c280
18 changed files with 754 additions and 0 deletions
138
tasks/main.yml
Normal file
138
tasks/main.yml
Normal file
|
|
@ -0,0 +1,138 @@
|
|||
- name: install packages
|
||||
ansible.builtin.apt:
|
||||
pkg:
|
||||
- postfixadmin
|
||||
- postfix
|
||||
- postfix-pgsql
|
||||
- prometheus-postfix-exporter
|
||||
- postsrsd
|
||||
- dovecot-common
|
||||
- dovecot-imapd
|
||||
- dovecot-managesieved
|
||||
- dovecot-pgsql
|
||||
|
||||
- name: add vmail group
|
||||
ansible.builtin.group:
|
||||
name: vmail
|
||||
system: true
|
||||
|
||||
- name: add vmail user
|
||||
ansible.builtin.user:
|
||||
name: vmail
|
||||
group: vmail
|
||||
home: /nonexistent
|
||||
create_home: false
|
||||
system: true
|
||||
|
||||
- name: create /var/mail/vmail
|
||||
ansible.builtin.file:
|
||||
path: /var/mail/vmail
|
||||
state: directory
|
||||
owner: vmail
|
||||
group: vmail
|
||||
mode: '0750'
|
||||
|
||||
# postfixadmin
|
||||
- name: create postfixadmin group
|
||||
ansible.builtin.group:
|
||||
name: postfixadmin
|
||||
system: true
|
||||
|
||||
- name: create postfixadmin user
|
||||
ansible.builtin.user:
|
||||
name: postfixadmin
|
||||
group: postfixadmin
|
||||
groups: www-data
|
||||
home: /nonexistent
|
||||
create_home: false
|
||||
system: true
|
||||
|
||||
- name: copy postfixadmin config
|
||||
ansible.builtin.template:
|
||||
src: postfixadmin/config.local.php.j2
|
||||
dest: /etc/postfixadmin/config.local.php
|
||||
owner: root
|
||||
group: postfixadmin
|
||||
mode: "0640"
|
||||
|
||||
- name: fix access rights to postfixadmin template cache
|
||||
ansible.builtin.file:
|
||||
state: directory
|
||||
owner: postfixadmin
|
||||
group: postfixadmin
|
||||
mode: 0700
|
||||
path: /var/cache/postfixadmin/templates_c
|
||||
|
||||
# php_version and "restart php-fpm" handler from nginx role
|
||||
- name: create postfixadmin php pool
|
||||
ansible.builtin.template:
|
||||
src: postfixadmin/php-fpm-pool.conf.j2
|
||||
dest: "/etc/php/{{ php_version }}/fpm/pool.d/postfixadmin.conf"
|
||||
owner: root
|
||||
group: root
|
||||
mode: 0644
|
||||
notify:
|
||||
- restart php-fpm
|
||||
|
||||
# dovecot
|
||||
- name: copy dovecot config
|
||||
ansible.builtin.template:
|
||||
src: "dovecot/{{ item }}.j2"
|
||||
dest: "/etc/dovecot/{{ item }}"
|
||||
owner: root
|
||||
group: root
|
||||
mode: 0644
|
||||
loop:
|
||||
- dovecot.conf
|
||||
- dovecot-sql.conf
|
||||
- dovecot-dict-sql.conf
|
||||
notify: restart dovecot
|
||||
|
||||
# prometheus-postfix-exporter
|
||||
- name: configure prometheus postfix exporter
|
||||
ansible.builtin.template:
|
||||
src: prometheus-postfix-exporter/default.j2
|
||||
dest: /etc/default/prometheus-postfix-exporter
|
||||
owner: root
|
||||
group: root
|
||||
mode: 0644
|
||||
notify:
|
||||
- restart prometheus-postfix-exporter
|
||||
|
||||
# postsrsd
|
||||
- name: configure postsrsd
|
||||
ansible.builtin.template:
|
||||
src: postsrsd/default.j2
|
||||
dest: /etc/default/postsrsd
|
||||
owner: root
|
||||
group: root
|
||||
mode: 0644
|
||||
notify:
|
||||
- restart postsrsd
|
||||
|
||||
# postfix
|
||||
- name: create postfix psql config dir
|
||||
ansible.builtin.file:
|
||||
state: directory
|
||||
owner: root
|
||||
group: root
|
||||
mode: 0755
|
||||
path: "/etc/postfix/pgsql"
|
||||
|
||||
- name: copy postfix config
|
||||
ansible.builtin.template:
|
||||
src: "postfix/{{ item }}.j2"
|
||||
dest: "/etc/postfix/{{ item }}"
|
||||
owner: root
|
||||
group: root
|
||||
mode: 0644
|
||||
loop:
|
||||
- main.cf
|
||||
- master.cf
|
||||
- header_checks
|
||||
- pgsql/relay_domains.cf
|
||||
- pgsql/virtual_alias_maps.cf
|
||||
- pgsql/virtual_domains_maps.cf
|
||||
- pgsql/virtual_mailbox_maps.cf
|
||||
- pgsql/virtual_sender_maps.cf
|
||||
notify: restart postfix
|
||||
Loading…
Add table
Add a link
Reference in a new issue