This repository has been archived on 2023-05-06. You can view files and clone it, but cannot push or open issues or pull requests.
pleroma-ansible-playbook/tasks/postgres.yml

56 lines
1.4 KiB
YAML
Raw Normal View History

2019-10-02 01:31:38 +01:00
---
- name: Postgres -- Ensure that PostgreSQL is installed.
apk:
name: postgresql, postgresql-contrib, py-psycopg2
state: present
- name: Postgres -- Ensure that the database is initialised.
command:
argv:
- /etc/init.d/postgresql
- setup
creates: /var/lib/postgresql/11/data/postgresql.conf
# TODO: Take a look at the postgres configuration file before going into production.
# TODO: Take a look at pg_hba before going into production.
- name: Postgres -- Ensure that PostgreSQL is enabled and started
service:
name: postgresql
enabled: yes
state: started
- name: waiting for Postgres to become available.
wait_for:
connect_timeout: 10
delay: 5
host: localhost
port: 5432
state: started
- name: Postgres -- Ensuring that the database user {{ pleroma_db_user }} exists.
postgresql_user:
db: postgres
encrypted: yes
name: "{{ pleroma_db_user }}"
password: "{{ pleroma_db_password }}"
state: present
- name: Postgres -- Ensuring that the database {{ pleroma_db_name }} exists.
postgresql_db:
conn_limit: "20"
encoding: UTF-8
name: "{{ pleroma_db_name }}"
owner: "{{ pleroma_db_user }}"
state: present
- name: Postgres -- Ensuring the PostgreSQL extensions is added to the database.
postgresql_ext:
name: "{{ item }}"
db: "{{ pleroma_db_name }}"
state: present
loop:
- citext
- pg_trgm
- uuid-ossp