Files
fedora-infra_ansible/playbooks/openshift-apps/poddlers.yml

134 lines
3.9 KiB
YAML

---
- name: Make the app be real
hosts: os_control[0]:os_control_stg[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
- /srv/web/infra/ansible/vars/apps/poddlers.yml
pre_tasks:
- name: Setup Rabbit User
ansible.builtin.include_role:
name: rabbit/user
vars:
user_name: toddlers{{ env_suffix }}
user_sent_topics: ^org\.fedoraproject\.{{ env_short }}\.toddlers\..*
- name: Setup Rabbit Queue
ansible.builtin.include_role:
name: rabbit/queue
vars:
queue_username: toddlers{{ env_suffix }}
queue_name: toddlers{{ env_suffix }}-{{ item.name }}
queue_routing_keys: "{{ item.topics }}"
queue_thresholds:
warning: 10
critical: 100
loop: "{{ poddlers_toddlers }}"
when: "item.replicas|default(1) > 0"
roles:
- role: openshift/project
project_app: poddlers
project_description: Small fedora-messaging toddlers that keep running around in pods.
project_appowners:
- abompard
- zlopez
- kevin
- amedvede
- jnsamyak
- nphilipp
- lenkaseg
- jnsamyak
tags:
- appowners
# Keytabs
- role: openshift/keytab
keytab_app: poddlers
keytab_key: service.keytab
keytab_secret_name: keytab
keytab_service: toddlers
- role: openshift/keytab
keytab_app: poddlers
keytab_key: sync-group.keytab
keytab_secret_name: sync-group-keytab
keytab_service: toddlers-sync-group
- role: openshift/ipa-client
ipa_client_app: poddlers
- role: openshift/object
object_app: poddlers
object_template: buildconfig.yml.j2
object_objectname: buildconfig.yml
- role: openshift/secret-file
secret_file_app: poddlers
secret_file_secret_name: toddlers-fedora-messaging-key
secret_file_key: toddlers.key
secret_file_privatefile: "rabbitmq/{{env}}/pki/private/toddlers{{env_suffix}}.key"
- role: openshift/secret-file
secret_file_app: poddlers
secret_file_secret_name: toddlers-fedora-messaging-crt
secret_file_key: toddlers.crt
secret_file_privatefile: "rabbitmq/{{env}}/pki/issued/toddlers{{env_suffix}}.crt"
- role: openshift/secret-file
secret_file_app: poddlers
secret_file_secret_name: toddlers-fedora-messaging-ca
secret_file_key: toddlers.ca
secret_file_privatefile: "rabbitmq/{{env}}/ca-combined.crt"
- role: openshift/object
object_app: poddlers
object_template: secrets.yml.j2
object_objectname: secrets.yml
- role: openshift/object
object_app: poddlers
object_template: cron-playtime.yml.j2
object_objectname: cron-playtime.yml
tags:
- cron-job
- role: openshift/object
object_app: poddlers
object_template: deploymentconfig.yml.j2
object_objectname: deploymentconfig.yml
- role: openshift/object
object_app: poddlers
object_file: imagestream.yml
object_objectname: imagestream.yml
tasks:
- block:
# Use a block here to apply the tags to the tasks within the included role
# https://docs.ansible.com/projects/ansible/latest/playbook_guide/playbooks_tags.html#tag-inheritance-for-includes-blocks-and-the-apply-keyword
- ansible.builtin.include_role:
name: openshift/start-build
vars:
start_build_app: poddlers
start_build_buildname: toddlers
tags:
- never
- build
- block:
# Use a block here too, same reason as above
- ansible.builtin.include_role:
name: openshift/rollout
vars:
rollout_app: poddlers
rollout_dcname: "{{ item.name }}"
loop: "{{ poddlers_toddlers }}"
tags:
- never
- rollout