scripts/critpath.py: support adding CoreOS-defined gated RPMs
The Fedora CoreOS team would like to start gating Bodhi updates on
CoreOS tests passing.
This patch adds a new `--with-coreos` switch to `critpath.py`
which will make it reach out to the CoreOS CI configuration file to
know which packages are marked as gating and generate a synthetic
`critical-path-coreos` group in the output `critpath.json`.
Currently, ONLY PACKAGES OWNED BY THE COREOS TEAM ARE GATED. Gating
on other packages will be discussed via a future Change Proposal. The
short-term goal is to make sure this is working well before opening
it up.
It's likely the code here will change once we do that, though how
exactly is intimately tied to previous discussions around gating and
the notion of critical path. Currently, they are bound together; we will
have to discuss whether it makes sense to keep it that way or separate
the concepts. Previous discussions on this in:
https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org/thread/PLMXRKKDYNJN2LBPJEJBWWA3HL6W2FVC
The new functionality is purely opt-in for now to make it safe but easy
to experiment with.
See also: https://github.com/coreos/fedora-coreos-tracker/issues/1617