- 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