Implement a 'whitelist' for running non-critpath update tests
We want to be able to selectively run the update tests for
non-critpath updates. This implements a system for doing so:
a whitelist where we can indicate that some or all of the
update tests should be run for specific package names. For any
given package we can specify an iterable of flavors to run the
tests for, or just indicate "run all the update tests".
The whitelist is implemented much like the WANTED list: there's
a default whitelist in `config.py` which can be overridden if
desired by a JSON-formatted config file.
The whitelist is parsed by the fedmsg consumer that automatically
schedules update jobs. Of course, we can still manually trigger
the tests for *any* update we like via the CLI.
The new feature should be covered pretty well in the
test suite. Otherwise, you have to just deploy this on an instance
with the fedmsg listening stuff set up, and wait for or replay
a message for an update that's on the whitelist. I am going to
deploy this to staging so we can check it works properly.
Reviewers: jsedlak, jskladan
Reviewed By: jsedlak
Differential Revision: https://phab.qa.fedoraproject.org/D1190