diff --git a/inventory/group_vars/openqa_onebox_test b/inventory/group_vars/openqa_onebox_test index e26f2f0d2f..3d2503a01f 100644 --- a/inventory/group_vars/openqa_onebox_test +++ b/inventory/group_vars/openqa_onebox_test @@ -29,6 +29,7 @@ openqa_dbname: openqa-onebox openqa_dbpassword: "{{ stg_openqa_dbpassword }}" openqa_dbuser: openqastg openqa_dbhost: localhost +openqa_dbhost_delegate: "{{ inventory_hostname }}" openqa_env: staging openqa_env_prefix: stg- # this is because openqa staging isn't really a staging host diff --git a/roles/openqa/server/tasks/main.yml b/roles/openqa/server/tasks/main.yml index 37a007ff6c..33a19746c0 100644 --- a/roles/openqa/server/tasks/main.yml +++ b/roles/openqa/server/tasks/main.yml @@ -260,31 +260,19 @@ tags: - config -- name: Create database (delegate) - delegate_to: "{{ openqa_dbhost }}" +- name: Create database + delegate_to: "{{ openqa_dbhost_delegate|default(openqa_dbhost) }}" become_user: postgres become: true postgresql_db: db={{ openqa_dbname }} - when: "openqa_dbhost is defined and openqa_dbhost != 'localhost'" + when: "openqa_dbhost is defined" -- name: Ensure db user has access to database (delegate) - delegate_to: "{{ openqa_dbhost }}" +- name: Ensure db user has access to database + delegate_to: "{{ openqa_dbhost_delegate|default(openqa_dbhost) }}" become_user: postgres become: true postgresql_user: db={{ openqa_dbname }} user={{ openqa_dbuser }} password={{ openqa_dbpassword }} role_attr_flags=NOSUPERUSER - when: "openqa_dbhost is defined and openqa_dbhost != 'localhost'" - -- name: Create database (non-delegate) - become_user: postgres - become: true - postgresql_db: db={{ openqa_dbname }} - when: "openqa_dbhost is defined and openqa_dbhost == 'localhost'" - -- name: Ensure db user has access to database (non-delegate) - become_user: postgres - become: true - postgresql_user: db={{ openqa_dbname }} user={{ openqa_dbuser }} password={{ openqa_dbpassword }} role_attr_flags=NOSUPERUSER - when: "openqa_dbhost is defined and openqa_dbhost == 'localhost'" + when: "openqa_dbhost is defined" - name: Database config template: src=database.ini.pgsql.j2 dest=/etc/openqa/database.ini owner=geekotest group=root mode=0640 @@ -392,7 +380,7 @@ failed_when: "1 != 1" - name: Set 'fedora' asset size limit (if specified) (pgsql) - delegate_to: "{{ openqa_dbhost }}" + delegate_to: "{{ openqa_dbhost_delegate|default(openqa_dbhost) }}" become_user: postgres become: true command: > @@ -403,7 +391,7 @@ changed_when: "pgsqlsize.stdout.find('UPDATE 0') == -1" - name: Set 'Fedora PowerPC' asset size limit (if specified) (pgsql) - delegate_to: "{{ openqa_dbhost }}" + delegate_to: "{{ openqa_dbhost_delegate|default(openqa_dbhost) }}" become_user: postgres become: true command: > @@ -415,7 +403,7 @@ changed_when: "pgsqlsizeppc.stdout.find('UPDATE 0') == -1" - name: Set 'Fedora AArch64' asset size limit (if specified) (pgsql) - delegate_to: "{{ openqa_dbhost }}" + delegate_to: "{{ openqa_dbhost_delegate|default(openqa_dbhost) }}" become_user: postgres become: true command: > @@ -427,7 +415,7 @@ changed_when: "pgsqlsizeaarch64.stdout.find('UPDATE 0') == -1" - name: Set (x86_64) update job group asset size limit (if specified) (pgsql) - delegate_to: "{{ openqa_dbhost }}" + delegate_to: "{{ openqa_dbhost_delegate|default(openqa_dbhost) }}" become_user: postgres become: true command: > @@ -439,7 +427,7 @@ changed_when: "pgsqlupdatesize.stdout.find('UPDATE 0') == -1" - name: Set ppc64le update job group asset size limit (if specified) (pgsql) - delegate_to: "{{ openqa_dbhost }}" + delegate_to: "{{ openqa_dbhost_delegate|default(openqa_dbhost) }}" become_user: postgres become: true command: >