ansible/playbooks/openshift-apps/oraculum.yml
2025-03-24 22:30:11 +01:00

137 lines
3.9 KiB
YAML

---
- name: Prepare setting up the database
hosts: db01.stg.iad2.fedoraproject.org:db01.iad2.fedoraproject.org
gather_facts: no
user: root
tasks:
- name: Install psycopg2 for the postgresql ansible modules
ansible.builtin.package:
name: python3-psycopg2
state: present
tags:
- packages
- name: Setup the database
hosts: db01.stg.iad2.fedoraproject.org:db01.iad2.fedoraproject.org
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"
tasks:
- name: Create the database user
community.postgresql.postgresql_user:
name: "{{ oraculum_db_user }}"
password: "{{ oraculum_db_pass }}"
- name: Create the database itself
community.postgresql.postgresql_db:
name: "{{ oraculum_db_name }}"
owner: "{{ oraculum_db_user }}"
encoding: UTF-8
- name: Test the database creation
community.postgresql.postgresql_db:
name: "{{ oraculum_db_name }}"
owner: "{{ oraculum_db_user }}"
encoding: UTF-8
- name: Make the app be real
hosts: os_control_stg[0]:os_control[0]
user: root
gather_facts: false
vars_files:
- /srv/web/infra/ansible/vars/global.yml
- "/srv/private/ansible/vars.yml"
- /srv/web/infra/ansible/vars/{{ ansible_distribution }}.yml
roles:
- role: openshift/project
project_app: oraculum
project_description: Packager Dashboard
project_appowners:
- frantisekz
- jskladan
- lbrabec
tags:
- appowners
- role: openshift/object
object_app: oraculum
object_template: buildconfig.yml.j2
object_objectname: buildconfig.yml
- role: openshift/object
object_app: oraculum
object_template: deploymentconfig.yml.j2
object_objectname: deploymentconfig.yml
- role: openshift/object
object_app: oraculum
object_template: deployment.yml.j2
object_objectname: deployment.yml
- role: openshift/object
object_app: oraculum
object_template: imagestream.yml.j2
object_objectname: imagestream.yml
- role: openshift/object
object_app: oraculum
object_file: service.yml
object_objectname: service.yml
- role: openshift/object
object_app: oraculum
object_template: secret.yml.j2
object_objectname: secret.yml
- role: openshift/route
route_app: oraculum
route_name: oraculum-api
route_host: "packager-dashboard{{ env_suffix }}.fedoraproject.org"
route_path: "/api"
route_serviceport: 8080-tcp
route_servicename: oraculum-api-endpoint
route_annotations:
haproxy.router.openshift.io/set-forwarded-headers: append
- role: openshift/route
route_app: oraculum
route_name: oraculum-oidc-callback
route_host: "packager-dashboard{{ env_suffix }}.fedoraproject.org"
route_path: "/oidc_callback"
route_serviceport: 8080-tcp
route_servicename: oraculum-api-endpoint
route_annotations:
haproxy.router.openshift.io/set-forwarded-headers: append
- role: openshift/route
route_app: oraculum
route_name: oraculum-flower
route_host: "packager-dashboard{{ env_suffix }}.fedoraproject.org"
route_path: "/_flower"
route_serviceport: 8080-tcp
route_servicename: oraculum-flower
route_annotations:
haproxy.router.openshift.io/set-forwarded-headers: append
- role: openshift/route
route_app: oraculum
route_name: oraculum-frontend
route_host: "packager-dashboard{{ env_suffix }}.fedoraproject.org"
route_serviceport: 8080-tcp
route_servicename: oraculum-frontend
route_annotations:
haproxy.router.openshift.io/set-forwarded-headers: append
- role: openshift/start-build
start_build_app: oraculum
start_build_buildname: packager-dashboard-build
start_build_objectname: packager-dashboard-build
tags:
- never
- build