diff --git a/README.md b/README.md index 373d4fa..ea9ee44 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,8 @@ # Stream Team Docs -This repository aims to contain several procedures for the centos steam team members. +This repository aims to contain several procedures for the centos stream team members. ## Index +[MBBOX](./mbbox/README.md) [Fedora Messaging](./fedora-messaging/README.md) diff --git a/fedora-messaging/README.md b/fedora-messaging/README.md index 4ee0bb5..096e269 100644 --- a/fedora-messaging/README.md +++ b/fedora-messaging/README.md @@ -18,9 +18,36 @@ This can be done by sending a pull request to their ansible repository (https:// The topic format uses the following scheme: `org....#` where: * ``: source as entity, should be `centos` in our case -* ``: env is either `prod` or `stg` but you should use the ansible var `env_suffix` +* ``: env is either `prod` or `stg` but you should use the ansible var `short_env` * ``: the application the message belongs to, which matches your username. A topic for centos koji would be: `org.centos.prod.koji.#` (`#` means Rabbit MQ will match the topic as long as it starts with `org.centos.prod.koji.`). Those changes will also need to be run by someone from the fedora infrastructure team. + +### Example + +The following ansible code is an example of how to add an user and a queue with a routing key. + +```yaml +# adding "centos-koji" user as an example + +- name: Add centos-koji User + run_once: true + include_role: + name: rabbit/user + vars: + username: centos-koji{{ env_suffix }} + +- name: Add centos-koji queue + run_once: true + include_role: + name: rabbit/queue + vars: + username: centos-koji{{ env_suffix }} + queue_name: centos-koji{{ env_suffix }} + # TTL: 10 days (in miliseconds) + message_ttl: 864000000 + routing_keys: + - "org.centos.{{ env_short }}.koji.#" +``` diff --git a/mbbox/README.md b/mbbox/README.md new file mode 100644 index 0000000..8c0d86c --- /dev/null +++ b/mbbox/README.md @@ -0,0 +1,63 @@ +# MBBox deployment guide + +## Description + +This guide will describe the deployment of [MBBox](https://github.com/fedora-infra/mbbox) operator in OpenShift 4 cluster and it's prerequisites. + +## Prerequisites + +### Persistent Volumes + +The MBBox needs several Persistent Volumes created in prior to deployment: + +* mbox-registry (Recommended: 100 Gi) - Used as image registry +* httpd (Recommended: 1Gi) - Used by koji-hub httpd server +* koji (Recommended: 50Gi) - Used for shared koji space +* postgres (Recommended: 5Gi) - Used by postgreSQL database + +### Postgres + +MBBox needs PostgreSQL database for various tasks. + +* Version: 10.4 +* Volumes: postgredb:/var/lib/postgresql + +### Secrets + +MBBox needs plenty of secrets to be created for the components. Following is the list of secrets. + +* ca-cert +Description: Certificate for Certification Authority +Key/value: cert/CA certificate +* koji-builder-client-cert +Description: Koji builder client certificate (must have the CN: koji builder host name) +Key/value: tls.pem/Combined certificate with key signed by CA +* koji-hub-service-cert +Description: Server certificate for koji-hub +Key/value: tls.crt/Koji server certificate signed by CA +Key/value: tls.key/Private key for the tls.crt +* koji-hub-admin-cert +Description: Certificate for koji admin user (must have the CN: koji admin username) +Key/value: client.pem/Combined certificate with key signed by CA +* koji-hub-web-client-cert +Description: Certificate for koji web client user (must have the CN: koji web client username) +Key/value: client.pem/Combined certificate with key signed by CA +* koji-hub-msg +Description: Koji hub messaging certificate for fedora messaging +Key/value: koji.ca/CA certificate for messaging +Key/value: koji.crt/Messaging certificate +Key/value: koji.key/Private key for messaging certificate +* kojira-client-cert +Description: Kojira client certificate to communicate with koji-hub (must have the CN: koji hub username for kojira) +Key/value: client.pem/Combined certificate with key signed by CA +* mbs-client-cert +Description: MBS backend client certificate to communicate with koji-hub (must have the CN: koji hub username for MBS) +Key/value: client.pem/Combined certificate with key signed by CA +* mbs-frontend-client-cert +Description: MBS frontend client certificate to communicate with koji-hub (must have the CN: koji hub hostname) +Key/value: client.pem/Combined certificate with key signed by CA +* mbs-frontend-client-cert +Description: MBS frontend server certificate +Key/value: tls.crt/MBS server certificate signed by CA +Key/value: tls.key/Private key for server certificate + diff --git a/mbbox/deployment.md b/mbbox/deployment.md deleted file mode 100644 index 8c0d86c..0000000 --- a/mbbox/deployment.md +++ /dev/null @@ -1,63 +0,0 @@ -# MBBox deployment guide - -## Description - -This guide will describe the deployment of [MBBox](https://github.com/fedora-infra/mbbox) operator in OpenShift 4 cluster and it's prerequisites. - -## Prerequisites - -### Persistent Volumes - -The MBBox needs several Persistent Volumes created in prior to deployment: - -* mbox-registry (Recommended: 100 Gi) - Used as image registry -* httpd (Recommended: 1Gi) - Used by koji-hub httpd server -* koji (Recommended: 50Gi) - Used for shared koji space -* postgres (Recommended: 5Gi) - Used by postgreSQL database - -### Postgres - -MBBox needs PostgreSQL database for various tasks. - -* Version: 10.4 -* Volumes: postgredb:/var/lib/postgresql - -### Secrets - -MBBox needs plenty of secrets to be created for the components. Following is the list of secrets. - -* ca-cert -Description: Certificate for Certification Authority -Key/value: cert/CA certificate -* koji-builder-client-cert -Description: Koji builder client certificate (must have the CN: koji builder host name) -Key/value: tls.pem/Combined certificate with key signed by CA -* koji-hub-service-cert -Description: Server certificate for koji-hub -Key/value: tls.crt/Koji server certificate signed by CA -Key/value: tls.key/Private key for the tls.crt -* koji-hub-admin-cert -Description: Certificate for koji admin user (must have the CN: koji admin username) -Key/value: client.pem/Combined certificate with key signed by CA -* koji-hub-web-client-cert -Description: Certificate for koji web client user (must have the CN: koji web client username) -Key/value: client.pem/Combined certificate with key signed by CA -* koji-hub-msg -Description: Koji hub messaging certificate for fedora messaging -Key/value: koji.ca/CA certificate for messaging -Key/value: koji.crt/Messaging certificate -Key/value: koji.key/Private key for messaging certificate -* kojira-client-cert -Description: Kojira client certificate to communicate with koji-hub (must have the CN: koji hub username for kojira) -Key/value: client.pem/Combined certificate with key signed by CA -* mbs-client-cert -Description: MBS backend client certificate to communicate with koji-hub (must have the CN: koji hub username for MBS) -Key/value: client.pem/Combined certificate with key signed by CA -* mbs-frontend-client-cert -Description: MBS frontend client certificate to communicate with koji-hub (must have the CN: koji hub hostname) -Key/value: client.pem/Combined certificate with key signed by CA -* mbs-frontend-client-cert -Description: MBS frontend server certificate -Key/value: tls.crt/MBS server certificate signed by CA -Key/value: tls.key/Private key for server certificate -