- name: Disable PostgreSQL module shell: dnf module disable -y postgresql register: disable_postgresql_module changed_when: "'Nothing to do' not in disable_postgresql_module.stdout" when: - ansible_facts['distribution_major_version'] == '8' - name: Add PostgreSQL repository dnf: name: "{{ postgresql_repo_package }}" disable_gpg_check: yes state: present when: postgresql_install_official_repo - name: "Install {{ postgresql_package_name }} {{ postgresql_version }}" dnf: name: "{{ postgresql_package }}" state: present disable_gpg_check: yes register: postgresql_setup - name: Install deps packages dnf: name: "{{ postgresql_deps_packages }}" state: present - name: Include data direcory include_tasks: data_dir.yaml - name: "Manage TLS/SSL certificates" #include_tasks: cacert.yaml include_tasks: ssl/main.yaml when: postgresql_ssl - name: Include WAL-G role ansible.builtin.include_role: name: wal-g-pg vars: wal_g_pg: yes wal_g_pg_home_dir: "{{ postgresql_home_dir }}" wal_g_pg_data_dir: "{{ postgresql_data_dir }}" wal_g_restore: "{{ postgresql_wal_g_restore }}" when: postgresql_wal_g_install - name: Include PostgreSQL restore include_tasks: restore.yaml when: postgresql_wal_g_restore_from_backup - name: PostgreSQL Initdb shell: "PGSETUP_INITDB_OPTIONS='--username {{ postgresql_superuser_username }} --auth-host {{ postgresql_password_encryption_algorithm }}' /usr/pgsql-{{ postgresql_major_version }}/bin/postgresql-{{ postgresql_major_version }}-setup initdb" register: initdb changed_when: "'Data directory is not empty!' not in initdb.stdout" failed_when: false - name: "Configure PostgreSQL" include_tasks: config.yaml tags: postgresql_configuration