self-hosting/roles/mailserver_database/tasks/main.yml

39 lines
907 B
YAML

---
- name: Install needed packages
become: true
ansible.builtin.apt:
name:
- postgresql
- postfix-pgsql
- python3-psycopg2
- acl
- name: Create postgresql users
become: true
become_user: postgres
loop:
- "{{ mailserver_user }}"
- "{{ mailserver_ro_user }}"
community.postgresql.postgresql_user:
name: "{{ item.name }}"
state: present
password: "{{ item.pwd }}"
- name: Create postgresql database
become: true
become_user: postgres
community.postgresql.postgresql_db:
name: "{{ mailserver_database }}"
owner: "{{ mailserver_user.name }}"
state: present
- name: Set privileges for postgresql RO user
become: true
become_user: postgres
community.postgresql.postgresql_privs:
database: "{{ mailserver_database }}"
roles: "{{ mailserver_ro_user.name }}"
privs: select
objs: ALL_IN_SCHEMA
state: present