Files
fedora-infra_ansible/playbooks/openshift-apps/resultsdb.yml
Aurélien Bompard 09c76c5b28 Fix ResultsDB variables
Signed-off-by: Aurélien Bompard <aurelien@bompard.org>
2025-07-01 11:59:46 +02:00

156 lines
4.7 KiB
YAML

---
- name: Setup the database
hosts: apps_dbserver:apps_dbserver_stg
gather_facts: no
become: yes
become_user: postgres
vars_files:
- /srv/web/infra/ansible/vars/global.yml
- /srv/private/ansible/vars.yml
- /srv/web/infra/ansible/vars/{{ ansible_distribution }}.yml
- /srv/web/infra/ansible/roles/openshift-apps/resultsdb/vars/main.yml
tasks:
- name: Resultsdb DB user - prod
community.postgresql.postgresql_user:
name: "{{ resultsdb_db_user }}"
password: "{{ prod_resultsdb_db_password }}"
when: env != 'staging'
- name: Resultsdb DB user - staging
community.postgresql.postgresql_user:
name: "{{ resultsdb_db_user }}"
password: "{{ stg_resultsdb_db_password }}"
when: env == 'staging'
- name: Resultsdb database creation
community.postgresql.postgresql_db:
name: "{{ resultsdb_db_name }}"
owner: "{{ resultsdb_db_user }}"
encoding: UTF-8
- name: Make the app be real
hosts: os_control[0]:os_control_stg[0]
user: root
gather_facts: no
vars_files:
- /srv/web/infra/ansible/vars/global.yml
- /srv/private/ansible/vars.yml
- /srv/web/infra/ansible/vars/{{ ansible_distribution }}.yml
- /srv/web/infra/ansible/roles/openshift-apps/resultsdb/vars/main.yml
roles:
- role: rabbit/user
user_name: "resultsdb{{ env_suffix }}"
user_sent_topics: ^org\.fedoraproject\.{{ env_short }}\.resultsdb\..*
# The openshift/project role breaks if the project already exists:
# https://pagure.io/fedora-infrastructure/issue/6404
- role: openshift/project
project_app: resultsdb
project_description: resultsdb
project_appowners:
- lholecek
- vmaljulin
- lrossett
- kevin
tags:
- apply-appowners
- role: openshift/secret-file
secret_file_app: resultsdb
secret_file_secret_name: resultsdb-fedora-messaging-key
secret_file_key: resultsdb.key
secret_file_privatefile: "rabbitmq/{{env}}/pki/private/resultsdb{{env_suffix}}.key"
- role: openshift/secret-file
secret_file_app: resultsdb
secret_file_secret_name: resultsdb-fedora-messaging-crt
secret_file_key: resultsdb.crt
secret_file_privatefile: "rabbitmq/{{env}}/pki/issued/resultsdb{{env_suffix}}.crt"
- role: openshift/secret-file
secret_file_app: resultsdb
secret_file_secret_name: resultsdb-fedora-messaging-ca
secret_file_key: resultsdb.ca
secret_file_privatefile: "rabbitmq/{{env}}/ca-combined.crt"
# backend objects
- role: openshift/object
object_app: resultsdb
object_template: backend/secrets.yml.j2
object_objectname: backend-secrets.yml
- role: openshift/object
object_app: resultsdb
object_template: backend/configmaps.yml.j2
object_objectname: backend-configmaps.yml
- role: openshift/object
object_app: resultsdb
object_template: backend/imagestream.yml.j2
object_objectname: backend-imagestream.yml
- role: openshift/object
object_app: resultsdb
object_template: backend/deploymentconfigs.yml.j2
object_objectname: backend-deploymentconfigs.yml
- role: openshift/object
object_app: resultsdb
object_template: backend/services.yml.j2
object_objectname: backend-services.yml
- role: openshift/route
route_app: resultsdb
route_name: resultsdb-api
route_host: "resultsdb{{ env_suffix }}.fedoraproject.org"
route_serviceport: api
route_servicename: resultsdb-api
route_path: /api
# frontend objects
- role: openshift/object
object_app: resultsdb
object_template: frontend/secrets.yml.j2
object_objectname: frontend-secrets.yml
- role: openshift/object
object_app: resultsdb
object_template: frontend/configmaps.yml.j2
object_objectname: frontend-configmaps.yml
- role: openshift/object
object_app: resultsdb
object_template: frontend/deploymentconfigs.yml.j2
object_objectname: frontend-deploymentconfigs.yml
- role: openshift/object
object_app: resultsdb
object_template: frontend/services.yml.j2
object_objectname: frontend-services.yml
- role: openshift/route
route_app: resultsdb
route_name: resultsdb-web
route_host: "resultsdb{{ env_suffix }}.fedoraproject.org"
route_serviceport: web
route_servicename: resultsdb-frontend
route_path: /
# rollouts
- role: openshift/rollout
rollout_app: resultsdb
rollout_dcname: "resultsdb-api"
failed_when: false
tags:
- never
- rollout
- role: openshift/rollout
rollout_app: resultsdb
rollout_dcname: "resultsdb-frontend"
failed_when: false
tags:
- never
- rollout