Dear Fedora Infra,

it's time to close the CI feedback loop!

We have been working on adding CI to Fedora for a little while now but this has not really had a visible effect since there are no consequences when tests pass or fail.

In order to change this, we plan to enable gating in bodhi. Originally this was meant to happen at flock already, but postponed until now due to various issues we considered blockers - those have been resolved. The change is fairly minor [3] and easy to undo if things do not work the way we expect them.

Since DevConf is at the end of the month and we know people will be traveling there (and some of the infra team will travel there the week before), we propose Monday January 15th as target to enable gating in bodhi. This gives us one week before travels start to get it working or turn it back off if necessary.

The tests run by the Atomic CI pipeline are controlled directly by the packager:
* Files in dist-git define which tests are run

What do you think?

Here is a small reminder of how the systems works:
* packager commit in dist-git
  - the Atomic CI pipeline is triggered and run tests
* packager builds in koji
* packager creates an update in bodhi
  - Taskotron is triggered and run tests on the build(s) and the update
* All test results go to resultsdb
* Bodhi queries greenwave
  * Greenwave queries resultsdb
  * Greenwave queries waiverdb
  * based on the test results found in resultsdb and the waivers in waiverdb,
    greenwave makes a decision about allowing the update to go through the gate
    or not
* Based on greenwave's decision, bodhi allows (or not) the update to be included
  in the push to updates-testing or updates

Next steps:
 * Packages will be tested in a non-Atomic context.
 * Broadening to make this available to all packagers, not just ones in Atomic.
 * RATS [2] will enable retriggering.
 * Further integration with Pagure and other Fedora services.

It is up to us (the community) to define the policy in greenwave[1] which
tests must pass to allow the update to go through the gate.

Happy to answer any questions or concerns you may have.
Dominik

IRC: #fedora-ci on freenode
https://pagure.io/fedora-ci/AtomicCi/

[1] https://infrastructure.fedoraproject.org/cgit/ansible.git/tree/roles/openshift-apps/greenwave/templates/configmap.yml#n33
[2] https://pagure.io/rats
[3]
``
diff --git a/ roles/bodhi2/base/templates/production.ini.j2 b/ roles/bodhi2/base/templates/production.ini.j2
index fc304dc56..ec3b24ef7 100644
--- a/roles/bodhi2/base/templates/production.ini.j2    
+++ b/roles/bodhi2/base/templates/production.ini.j2    
@@ -298,7 +298,7 @@ krb_keytab = /etc/krb5.bodhi_bodhi{{ env_suffix }}.fedoraproject.org.keytab
 
 # Set this to True to enable gating based on policies enforced by Greenwave. If you set this to True,
 # be sure to add a cron job to run the bodhi-check-policies CLI periodically.
-test_gating.required = False
+test_gating.required = True
 
 # If this is set to a URL, a "More information about test gating" link will appear on update pages for users
 # to click and learn more.
``