This is a big diff with all the changes from the 'pungi4'
branch - that branch has the changes split into multiple commits.
This pretty much entirely rewrites scheduling so instead of using
fedfind to find composes and wait for them to exist and find images
in them, and having systemd timers with implied knowledge about when
various types of compose show up, we listen out for fedmsg messages
to tell when a new compose has appeared, and we use the Pungi 4
metadata to decide what images we want to download and test.
Ideally we'd like to have the fedmsg listening bits be a Taskotron
trigger and task, but that's still going through review at present
so we're just going to use a simple standalone consumer for now.
One annoying issue is that we still want to test the daily 'two week
Atomic' test composes, and those will not be done with Pungi 4 yet.
So we have a couple of small hacks in the fedmsg consumer and some
more dumb hacks in the scheduler to cope with those: we listen out
for the fedmsg's from that compose process as well as Pungi 4
fedmsg's, and we just hard code the expected location and metadata
of the single ISO we actually want to test within such a compose. At
first I wrote a whole 'clever' layer in fedfind to synthesize Pungi
4-y metadata for a non-Pungi-4 compose, but it was way too much code
for the job we really need to do, this is much simpler.
We should bump version also :-).