- name: Install PostgreSQL ansible.builtin.apt: name: postgresql state: present - name: Trust connections to PostgreSQL community.general.postgresql_pg_hba: dest: "{{ postgresql_config }}" contype: host databases: all users: all address: "{{ item }}" method: trust register: postgresql_hba loop: "{{ postgresql_trust }}" - name: Change PostgreSQL listen addresses community.general.postgresql_set: name: listen_addresses value: "{{ postgresql_listen }}" become: true become_user: postgres register: postgresql_config - name: Reload PostgreSQL ansible.builtin.service: name: postgresql state: reloaded when: postgresql_hba.changed and not postgresql_config.changed - name: Restart PostgreSQL ansible.builtin.service: name: postgresql state: restarted when: postgresql_config.changed - name: Allow database connections community.general.ufw: rule: allow port: "5432" proto: tcp src: "{{ item }}" loop: "{{ postgresql_trust }}"