de.lehmann.automation.ansib.../roles/common/tasks/postgres_cron.yml
2024-04-16 13:32:07 +02:00

62 lines
1.6 KiB
YAML

- name: "Install postgresql-{{ postgresql_version }}-cron"
tags:
- install
- timescaledb_install
apt:
pkg:
- "postgresql-{{ postgresql_version }}-cron"
state: latest
update_cache: yes
- name: "Add pg_cron to shared_preload_libraries"
tags:
- install
- timescaledb_install
lineinfile:
path: /etc/postgresql/{{ postgresql_version }}/main/postgresql.conf
regexp: "^shared_preload_libraries = 'timescaledb'"
line: "shared_preload_libraries = 'timescaledb,pg_cron'"
- name: "Define cron database name"
tags:
- install
- timescaledb_install
lineinfile:
dest: /etc/postgresql/{{ postgresql_version }}/main/postgresql.conf
line: "cron.database_name = '{{ timescaledb_database_name }}'"
- name: "Define cron database name"
tags:
- install
- timescaledb_install
lineinfile:
dest: /etc/postgresql/{{ postgresql_version }}/main/postgresql.conf
line: "cron.timezone = 'Europe/Berlin'"
- name: "Restart postgresql service"
tags:
- install
- timescaledb_install
systemd:
name: postgresql
state: restarted
- name: "Configure pg_cron extension"
tags:
- install
- timescaledb_install
postgresql_query:
db: "{{ timescaledb_database_name }}"
login_user: "postgres"
login_password: "{{ postgresql_admin_password }}"
query:
- CREATE EXTENSION pg_cron;
- GRANT USAGE ON SCHEMA cron TO {{ timescaledb_database_user }};
- name: "Restart postgresql service"
tags:
- install
- timescaledb_install
systemd:
name: postgresql
state: restarted