ansible/roles/postgresql_server/tasks/datanommer.yml
Aurélien Bompard 530d4672de
Syntax fix
Signed-off-by: Aurélien Bompard <aurelien@bompard.org>
2021-09-17 10:47:06 +02:00

88 lines
2.2 KiB
YAML

# Use a custom module until TimescaleDB is available in EPEL
# https://bugzilla.redhat.com/show_bug.cgi?id=1987790
- name: Install the timescaledb repo
copy:
dest: /etc/yum.repos.d/timescaledb.repo
content: |
[timescaledb]
name = Copr modules repo for timescaledb
baseurl = https://download.copr.fedorainfracloud.org/results/abompard/timescaledb/modules/epel-8-$basearch+timescaledb-master-20210730083523/latest/$basearch
gpgcheck=0
gpgkey=https://download.copr.fedorainfracloud.org/results/abompard/timescaledb/pubkey.gpg
repo_gpgcheck=0
enabled = 1
tags:
- datanommer
- postgresql
- timescaledb
when: ansible_distribution_major_version|int >= 8 and ansible_distribution == 'RedHat'
#
- name: Install the timescaledb module
copy:
dest: /etc/dnf/modules.d/timescaledb.module
content: |
[timescaledb]
name=timescaledb
stream=master
profiles=
state=enabled
tags:
- datanommer
- postgresql
- timescaledb
when: ansible_distribution_major_version|int >= 8 and ansible_distribution == 'RedHat'
- name: Install timescaledb
dnf:
name:
- timescaledb
state: present
tags:
- datanommer
- postgresql
- timescaledb
- name: Add timescaledb to postgresql config
lineinfile:
path: /var/lib/pgsql/data/postgresql.conf
regexp: ^shared_preload_libraries =
line: "shared_preload_libraries = 'timescaledb'"
notify:
- restart postgresql
tags:
- datanommer
- postgresql
- timescaledb
- block:
# Users
- name: create the main DB user
postgresql_user:
name: "{{ datanommerDBUser }}"
password: "{{ (env == 'production')|ternary(datanommerDBPassword, datanommer_stg_db_password) }}"
- name: create the RO DB user
postgresql_user:
name: datanommer_ro
password: "{{ datanommer_ro_password }}"
# Databases
- name: create the datanommer database
postgresql_db:
name: datanommer2
owner: "{{ datanommerDBUser }}"
encoding: UTF-8
# Enable timescaledb
- name: enable timescaledb
postgresql_ext:
name: timescaledb
db: datanommer2
become: true
become_user: postgres
tags:
- datanommer
- postgresql