- name: create postgresql database postgresql_db: name: '{{ mediawiki_db_name }}' state: present delegate_to: "{{ postgresql_host.split('.')[0] }}" become: True become_user: postgres - name: create postgresql user postgresql_user: name: '{{ mediawiki_user }}' db: '{{ mediawiki_db_name }}' priv: ALL state: present delegate_to: "{{ postgresql_host.split('.')[0] }}" become: True become_user: postgres - name: check if database schema is initialized postgresql_query: login_user: '{{ mediawiki_user }}' login_host: '{{ mediawiki_db_host }}' db: '{{ mediawiki_db_name }}' query: SELECT 1 FROM mediawiki.page become: True become_user: apache environment: GSS_USE_PROXY: 'yes' register: mediawiki_check_db failed_when: false - name: initialize database schema command: > php {{ mediawiki_home }}/maintenance/install.php --server {{ mediawiki_url }} --dbuser {{ mediawiki_user }} --dbname {{ mediawiki_db_name }} --dbserver {{ mediawiki_db_host }} --dbtype postgres --pass {{ mediawiki_admin_password | quote }} --scriptpath / {{ mediawiki_site_name | quote }} {{ mediawiki_admin_username }} become: True become_user: apache environment: GSS_USE_PROXY: 'yes' when: - mediawiki_check_db.msg is defined - mediawiki_check_db.msg is search('relation "mediawiki.page" does not exist')