Ensure matrix-postgres.service is started before creating additional users/databases

This commit is contained in:
Slavi Pantaleev 2020-12-14 00:59:59 +02:00
parent a374d309c8
commit 183d2a10db
2 changed files with 20 additions and 4 deletions

View file

@ -42,3 +42,9 @@ matrix_postgres_container_postgres_bind_port: ""
# username: matrix_appservice_slack # username: matrix_appservice_slack
# password: some_password # password: some_password
matrix_postgres_additional_databases: [] matrix_postgres_additional_databases: []
# The number of seconds to wait after starting `matrix-postgres.service`
# and before trying to run queries for creating additional databases/users against it.
#
# For most (subsequent) runs, Postgres would already be running, so no waiting will be happening at all.
matrix_postgres_additional_databases_postgres_start_wait_timeout_seconds: 15

View file

@ -1,10 +1,20 @@
--- ---
# TODO - we should ensure matrix-postgres.service is started. - name: Ensure matrix-postgres is started
# .. and that if we had just started it, we've given it ample time to initialize, service:
# before we attempt to run queries against it. name: matrix-postgres
state: started
daemon_reload: yes
register: matrix_postgres_service_start_result
- name: Create additional Postgers user and database - name: Wait a bit, so that Postgres can start
wait_for:
timeout: "{{ matrix_postgres_additional_databases_postgres_start_wait_timeout_seconds }}"
delegate_to: 127.0.0.1
become: false
when: "matrix_postgres_service_start_result.changed|bool"
- name: Create additional Postgres user and database
include_tasks: "{{ role_path }}/tasks/util/create_additional_database.yml" include_tasks: "{{ role_path }}/tasks/util/create_additional_database.yml"
with_items: "{{ matrix_postgres_additional_databases }}" with_items: "{{ matrix_postgres_additional_databases }}"
loop_control: loop_control: