diff --git a/roles/taskotron/resultsdb-backend/tasks/database.yml b/roles/taskotron/resultsdb-backend/tasks/database.yml new file mode 100644 index 0000000000..62505a1d52 --- /dev/null +++ b/roles/taskotron/resultsdb-backend/tasks/database.yml @@ -0,0 +1,22 @@ +- name: prepare resultsdb database + hosts: "{{ resultsdb_db_host }}" + gather_facts: no + sudo: yes + sudo_user: postgres + + tasks: + - name: ensure dev database is created + action: postgresql_db db={{ resultsdb_db_name }} + + - name: ensure dev resultsdb db user has access to dev database + when: deployment_type == 'dev' + action: postgresql_user db={{ resultsdb_db_name }} user={{ dev_resultsdb_db_user }} password={{ dev_resultsdb_db_password }} role_attr_flags=NOSUPERUSER + + - name: ensure stg resultsdb db user has access to stg database + when: deployment_type == 'stg' + action: postgresql_user db={{ resultsdb_db_name }} user={{ stg_resultsdb_db_user }} password={{ stg_resultsdb_db_password }} role_attr_flags=NOSUPERUSER + + - name: ensure prod resultsdb db user has access to prod database + when: deployment_type == 'prod' + action: postgresql_user db={{ resultsdb_db_name }} user={{ prod_resultsdb_db_user }} password={{ prod_resultsdb_db_password }} role_attr_flags=NOSUPERUSER + diff --git a/roles/taskotron/resultsdb-backend/tasks/main.yml b/roles/taskotron/resultsdb-backend/tasks/main.yml index d82ffb90ce..abf7387045 100644 --- a/roles/taskotron/resultsdb-backend/tasks/main.yml +++ b/roles/taskotron/resultsdb-backend/tasks/main.yml @@ -6,26 +6,7 @@ - python-psycopg2 - libsemanage-python -- name: prepare resultsdb database - hosts: "{{ resultsdb_db_host }}" - gather_facts: no - sudo: yes - sudo_user: postgres - tasks: - - name: ensure dev database is created - action: postgresql_db db={{ resultsdb_db_name }} - - - name: ensure dev resultsdb db user has access to dev database - when: deployment_type == 'dev' - action: postgresql_user db={{ resultsdb_db_name }} user={{ dev_resultsdb_db_user }} password={{ dev_resultsdb_db_password }} role_attr_flags=NOSUPERUSER - - - name: ensure stg resultsdb db user has access to stg database - when: deployment_type == 'stg' - action: postgresql_user db={{ resultsdb_db_name }} user={{ stg_resultsdb_db_user }} password={{ stg_resultsdb_db_password }} role_attr_flags=NOSUPERUSER - - - name: ensure prod resultsdb db user has access to prod database - when: deployment_type == 'prod' - action: postgresql_user db={{ resultsdb_db_name }} user={{ prod_resultsdb_db_user }} password={{ prod_resultsdb_db_password }} role_attr_flags=NOSUPERUSER +- include: database.yml - name: ensure selinux lets httpd talk to postgres seboolean: name=httpd_can_network_connect_db persistent=yes state=yes