Frequently Asked Questions
While we believe CI and gating will ultimately help making a better Fedora, nothing gets enforced at this point. Gating is entirely optional and if you choose not to opt in yet, you can keep packaging as you do now!
We’re so glad you asked! :)
There are two steps to allow you to opt in for gating:
Add tests to your package.
Configure gating, so that your package is gated on those tests.
We go over both of them in our opting in page.
That’s not a question! Anyway, bugs will be bugs and we want to get your feedback on them to help make this the best possible experience. This is the first roll-out of this change, and we take a “release early and release often” approach, so many more will come to let us squash the bugs you help us find. This initial rollout lets us gather feedback and iterate on the approach in an open source fashion.
If you did not opt in and you can’t do your packaging work as you used to, please file an infrastructure ticket, since it’s likely a bug and may or may not be related to gating.
If you did opt in and anything in the gating of your update doesn’t work (for example, CI ran but its results aren’t being considered, waiving didn’t work…), file an infrastructure ticket.
If you opted in and the tests don’t run the way you expect, file a Fedora CI ticket.
Alternatively you can join us on IRC in
#fedora-ci and chat about all things CI and Gating.
Sometimes infra fails on us or we have a networking issue or some other gremlin messes with with your run and the tests that we rely on suddenly are no longer passing.
Unfortunately, at this point it is not possible to re-trigger a test run. This feature is on our roadmap and we will get get on it as soon as possible, but it is just not here in this early stage. As a workaround, you can bump the release and do a new build or see the next section to unblock you if necessary. While we realize this is not the best user experience, we hope that you can live with this workaround while we work on better way of handling this.
You shouldn’t need to unblock an update, either the tests need to be fixed or the code being tested has an issue that needs addressing. This is theory, however. Unfortunately, in practice we have to do it sometimes, owing to how little the involved code has had a chance to mature (yet). :(
The CI documentation covers how to waive failed tests.
To get started, try running:
bodhi updates waive --help
When gating stops an update for legitimate reasons (the update is faulty and should have been gated), submit a fixed build.
It is recommended to unpush the faulty update.
We hope you reported all the issues you’ve found/faced and help us to resolve
them. We would also appreciate your feedback on why you opt out, your opinion
really matters to us. The more feedback we get, the better we can make the
experience for the community as a whole as we progress. Meanwhile, you can
simply remove the
gating.yaml file you’ve added to your git repository when
you opted in; Greenwave will then ignore your package.