Compare commits

...

2 Commits

Author SHA1 Message Date
93889e5c56 v1.0.3 2026-01-29 14:19:11 +01:00
ed2173e8f5 v1.0.2 2026-01-29 14:18:17 +01:00

View File

@@ -5,16 +5,21 @@
- postgresql-contrib
update_cache: yes
# --- Dynamiczne wykrywanie wersji PostgreSQL ---
- name: Detect PostgreSQL clusters
shell: "pg_lsclusters --no-header | awk '{print $1, $2}' | head -n1"
register: pg_cluster_info
# --- Detect PostgreSQL version and cluster ---
- name: Detect PostgreSQL version
shell: "ls -d /etc/postgresql/*/ | head -n1 | xargs basename"
register: pg_version_result
changed_when: false
- name: Detect cluster name
shell: "ls -d /var/lib/postgresql/*/main/ 2>/dev/null | head -n1 | xargs -I {} basename $(dirname {}) | tail -n1"
register: pg_cluster_result
changed_when: false
- name: Set PostgreSQL version and cluster facts
set_fact:
pg_version: "{{ pg_cluster_info.stdout.split()[0] }}"
pg_cluster: "{{ pg_cluster_info.stdout.split()[1] }}"
pg_version: "{{ pg_version_result.stdout | trim }}"
pg_cluster: "main"
- name: Define PostgreSQL cluster path
set_fact:
@@ -34,25 +39,41 @@
shell: "pg_ctlcluster {{ pg_version }} {{ pg_cluster }} stop"
ignore_errors: true
# --- Ensure data directory exists ---
- name: Create PostgreSQL data directory
file:
path: "{{ pg_data_path }}"
state: directory
owner: postgres
group: postgres
mode: "0700"
# --- Ensure cluster exists ---
- name: Ensure PostgreSQL cluster exists
shell: "pg_createcluster {{ pg_version }} {{ pg_cluster }}"
ignore_errors: true
# --- Configure PostgreSQL ---
- name: postgresql.conf
template:
src: postgresql.conf.j2
dest: "{{ pg_cluster_path }}/postgresql.conf"
owner: postgres
group: postgres
mode: "0600"
- name: pg_hba.conf
template:
src: pg_hba.conf.j2
dest: "{{ pg_cluster_path }}/pg_hba.conf"
owner: postgres
group: postgres
mode: "0600"
# --- Ensure cluster exists and started ---
- name: Ensure PostgreSQL cluster exists
shell: |
if [ ! -d "{{ pg_data_path }}" ]; then
pg_createcluster {{ pg_version }} {{ pg_cluster }} --start
else
pg_ctlcluster {{ pg_version }} {{ pg_cluster }} start
fi
# --- Start cluster ---
- name: Start PostgreSQL cluster
shell: "pg_ctlcluster {{ pg_version }} {{ pg_cluster }} start"
ignore_errors: true
# --- Wait for socket to be ready ---
- name: Wait for PostgreSQL socket