fedora-qa / check-compose

Created 3 years ago
Maintained by adamwill
Script and fedmsg consumer to check test results for Fedora composes
Members 2
Adam Williamson committed 2 months ago

check-compose

check-compose is a simple script for running various informational checks on a Fedora release or 'compose'. It will check for expected images that are missing and check for openQA test jobs for the compose and print some information on their status, if the system where the check is running is correctly configured to talk to an openQA server. A fedora-messaging consumer that listens for messages indicating testing of a compose has completed and runs check-compose on the new compose is also included.

Requirements

Python libraries:

If openqa_client is not available, openQA job checking will not be done. If fedora-messaging is not available, you will not be able to use the consumer.

Installation

Install the required external Python libraries, then run python3 setup.py install. If you wish to use the fedora-messaging consumer to have reports generated automatically when compose testing completes, run dnf install fedora-messaging, copy check-compose.toml to /etc/fedora-messaging and modify it as appropriate. You must at least change the queue name to a unique, private value (the official recommendation is to use a UUID generated by uuidgen). Then you can enable and start the consumer as a systemd service:

sudo systemctl enable fm-consumer@check-compose
sudo systemctl start fm-consumer@check-compose

If checkcomp_prod in the consumer_config section is set false, the consumer will never send the report by email no matter what the config file says; the report will be printed to console, so if you run the consumer at a terminal you will see the report there, if you run it as a system service it should appear in the system logs. If checkcomp_prod is set true, it will send out emails if you have email-from and email-to configured in the config file.

Configuration

check-compose will read configuration from /etc/check-compose.conf or ~/.config/check-compose.conf (with the latter taking priority if both exist). See check-compose.conf.sample for information on what you can set there. These and other options can also be set with command line arguments: arguments override config file settings, if passed.

License

check-compose is released under the GPL, version 3 or later. See COPYING and the header of check-compose itself.