88 lines
2.2 KiB
YAML
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
|