Homelab-Infra/roles/postgres/tasks/main.yml

41 lines
1.1 KiB
YAML

---
# 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