- name: install postgres apt: pkg: - postgresql - python-psycopg2 state: latest update_cache: yes - name: generate pg_hba template: src: pg_hba.conf.j2 dest: /etc/postgresql/9.6/main/pg_hba.conf owner: postgres group: postgres mode: 0640 notify: - restart postgres - name: add postgresql dbs postgresql_db: name: "{{ item.key }}" become_user: postgres become: true with_dict: "{{ postgresql.dbs }}" - name: add postgresql user(s) postgresql_user: name: "{{ item.key }}" password: "{{ item.value }}" become_user: postgres become: true with_dict: "{{ postgresql.users }}" - name: flush handlers so postgres is ready before other roles try to use it meta: flush_handlers