Adding fmc role

Signed-off-by: Mohan Boddu <mboddu@bhujji.com>
This commit is contained in:
Mohan Boddu 2020-05-20 16:31:20 -04:00
parent 1196cb6295
commit 30bf65b01b
2 changed files with 111 additions and 0 deletions

25
roles/fmc/tasks/main.yml Normal file
View file

@ -0,0 +1,25 @@
---
- name: Copy fedora-minimal-compose.py to python site-packages
get_url:
url: https://pagure.io/releng/fmc/raw/master/f/fedora-minimal-compose.py
dest: /usr/lib/python3.7/site-packages/
mode: '0755'
- name: Install fedora-messaging rpm
dnf:
package: fedora-messaging
state: latest
- name: Place fedora-minimal-compose.toml /etc/fedora-messaging/
template:
src: fedora-minimal-compose.toml
dest: /etc/fedora-messaging/fedora-minimal-compose.toml
owner: root
group: root
mode: 644
- name: Start and enable the fmc services
service:
name: fm-consumer@fedora-minimal-compose
state: started
enabled: yes

View file

@ -0,0 +1,86 @@
# A basic configuration for Fedora's message broker
#
# This file is in the TOML format.
amqp_url = "amqps://fedora:@rabbitmq.fedoraproject.org/%2Fpublic_pubsub"
callback = "fedora-minimal-compose:Consumer"
[tls]
ca_cert = "/etc/fedora-messaging/cacert.pem"
keyfile = "/etc/fedora-messaging/fedora-key.pem"
certfile = "/etc/fedora-messaging/fedora-cert.pem"
[client_properties]
app = "fmc"
app_url = "https://pagure.io/releng/fmc"
[exchanges."amq.topic"]
type = "topic"
durable = true
auto_delete = false
arguments = {}
# Queue names *must* be in the normal UUID format: run "uuidgen" and use the
# output as your queue name. If your queue is not exclusive, anyone can connect
# and consume from it, causing you to miss messages, so do not share your queue
# name. Any queues that are not auto-deleted on disconnect are garbage-collected
# after approximately one hour.
#
# If you require a stronger guarantee about delivery, please talk to Fedora's
# Infrastructure team.
[queues.00000000-0000-0000-0000-000000000000]
durable = false
auto_delete = true
exclusive = true
arguments = {}
[[bindings]]
queue = "00000000-0000-0000-0000-000000000000"
exchange = "amq.topic"
routing_keys = ["org.fedoraproject.prod.buildsys.rpm.sign"]
[consumer_config]
rawhide = {{FedoraRawhideNumber}}
odcs_url = 'https://odcs.fedoraproject.org'
odcs_file = '/etc/releng-odcs-oidc-token'
packages_list = ['anaconda', 'authconfig', 'python-blivet', 'pyparted', 'parted', 'pykickstart', 'blivet-gui', 'libblockdev', 'e2fsprogs', 'dosfstools', 'grub2', 'shim-signed', 'libselinux']
# When we have the ability to run one compose for multiple builds, use the following list
# packages_list = ['anaconda', 'authconfig', 'python-blivet', 'pyparted', 'parted', 'pykickstart', 'blivet-gui', 'libblockdev', 'e2fsprogs', 'dosfstools', 'grub2', 'shim-signed', 'libselinux', 'chrony', 'fcoe-utils', 'hfsplus-tools', 'firewalld', 'realmd', 'yelp', 'libtimezonemap', 'kernel', 'systemd', 'dracut', 'plymouth', 'gtk3', 'python3']
koji_url = 'https://koji.fedoraproject.org/kojihub'
principal = 'releng@FEDORAPROJECT.ORG'
keytab = '/etc/krb5.releng.keytab'
[qos]
prefetch_size = 0
prefetch_count = 25
[log_config]
level = "DEBUG"
version = 1
disable_existing_loggers = true
[log_config.formatters.simple]
format = "%(asctime)s %(levelname)s %(name)s - %(message)s"
[log_config.handlers.console]
class = "logging.StreamHandler"
formatter = "simple"
stream = "ext://sys.stdout"
[log_config.loggers.fedora_messaging]
level = "INFO"
propagate = false
handlers = ["console"]
[log_config.loggers.twisted]
level = "INFO"
propagate = false
handlers = ["console"]
[log_config.loggers.pika]
level = "WARNING"
propagate = false
handlers = ["console"]
[log_config.root]
level = "ERROR"
handlers = ["console"]