--- # postgres/tasks/main.yml - name: Create postgres container directory ansible.builtin.set_fact: dir_list: "{{ postgres_base_directories }}" - name: Setup directory for postgres config ansible.builtin.import_role: name: container_runtime tasks_from: config-setup - name: Deploy Postgres Quadlet template: src: postgres.container.j2 dest: "{{ container_config_dir }}/postgres.container" owner: "{{ container_user }}" group: "{{ container_group }}" mode: "0600" - name: Set fact for systemd ansible.builtin.set_fact: service_name: "postgres" - name: Execute systemd tasks ansible.builtin.import_role: name: container_runtime tasks_from: systemd - name: Wait for Postgres to be ready (Handling the double-start) become: true become_user: "{{ container_user }}" environment: XDG_RUNTIME_DIR: "{{ container_runtime_dir }}" ansible.builtin.command: cmd: "podman exec postgres pg_isready -U synapse -d synapse" register: pg_check until: pg_check.rc == 0 retries: 20 delay: 5 changed_when: false when: not ansible_check_mode