diff --git a/roles/mailserver_database/handlers/main.yml b/roles/mailserver_database/handlers/main.yml new file mode 100644 index 0000000..7d02a0d --- /dev/null +++ b/roles/mailserver_database/handlers/main.yml @@ -0,0 +1,10 @@ +--- +- name: Create postgresql tables + become: true + become_user: postgres + community.postgresql.postgresql_script: + db: "{{ mailserver_database.db }}" + path: ~/mailserver_tables.sql + login_user: "{{ mailserver_database.admin_user.name }}" + login_password: "{{ mailserver_database.admin_user.pwd }}" + login_host: 127.0.0.1 diff --git a/roles/mailserver_database/tasks/main.yml b/roles/mailserver_database/tasks/main.yml index ede3d4e..d5b134e 100644 --- a/roles/mailserver_database/tasks/main.yml +++ b/roles/mailserver_database/tasks/main.yml @@ -35,16 +35,10 @@ src: tables.sql.j2 dest: ~/mailserver_tables.sql mode: "644" + notify: Create postgresql tables -- name: Create postgresql tables - become: true - become_user: postgres - community.postgresql.postgresql_script: - db: "{{ mailserver_database.db }}" - path: ~/mailserver_tables.sql - login_user: "{{ mailserver_database.admin_user.name }}" - login_password: "{{ mailserver_database.admin_user.pwd }}" - login_host: 127.0.0.1 +- name: Make sure tables are created before setting permissions + ansible.builtin.meta: flush_handlers - name: Set privileges for postgresql RO user become: true