From Fedora Project Wiki

< CI

(Add section Waiving)
(Shortly describe rules, add more links)
Line 1: Line 1:
= Gating =
Gating of packages based on test results is currently enabled on demand. If you want to turn the gating on for your component create a new file `gating.yaml` in the root of the package dist git directory with the following content:
Gating of packages based on test results is currently enabled on demand. If you want to turn the gating on for your component create a new file `gating.yaml` in the root of the package dist git directory with the following content:


Line 8: Line 10:
   - !PassingTestCaseRule {test_case_name: dist.depcheck}
   - !PassingTestCaseRule {test_case_name: dist.depcheck}


This will enable gating for all Fedora releases based on the result of the CI [[CI/Pipeline|Pipeline]]. The `decision_context` is to be [https://pagure.io/greenwave/issue/282 clarified].
This will enable gating for all Fedora releases based on the result of the CI [[CI/Pipeline|Pipeline]]. The `decision_context` is to be [https://pagure.io/greenwave/issue/282 clarified]. Rules define test cases that should be considered for the gating decision, in this case `dist.depcheck`.


== Waiving ==
= Waiving =


If the failed test result is irrelevant you can waive it using the bodhi web interface or directly from the command line.
If the failed test result is irrelevant you can waive it using the [https://bodhi.fedoraproject.org/ Bodhi web interface] or directly from the command line.


  # List blocking test results
  # List blocking test results
Line 23: Line 25:
  bodhi update waive <id> --test=all "Comment explaining the waiver"
  bodhi update waive <id> --test=all "Comment explaining the waiver"


While web UI only allow to waive all tests command line provides a way to select tests which should be waived.
While the web UI only allows to waive all tests, command line provides a way to select tests which should be waived.


== Links ==
= Links =


* [https://pagure.io/greenwave Greewave] ... service to evaluate gating policies based on test results
* [https://pagure.io/taskotron/resultsdb ResultsDB] ... results store engine
* [https://pagure.io/waiverdb WaiverDB] ... service for recording waivers against test results
* Greenwave's [https://docs.pagure.org/greenwave/package-specific-policies.html Package-specific policies]
* Greenwave's [https://docs.pagure.org/greenwave/package-specific-policies.html Package-specific policies]
* [https://pagure.io/fesco/issue/1966 Allow turning on opt-in gating] issue
* [https://pagure.io/fesco/issue/1966 Allow turning on opt-in gating] issue
* [https://github.com/fedora-infra/bodhi/pull/2468 Implement the possibility to waive missing requirements via bodhi-cli]
* [https://github.com/fedora-infra/bodhi/pull/2468 Implement the possibility to waive missing requirements via bodhi-cli]

Revision as of 11:50, 23 August 2018

Gating

Gating of packages based on test results is currently enabled on demand. If you want to turn the gating on for your component create a new file gating.yaml in the root of the package dist git directory with the following content:

--- !Policy
product_versions:
  - fedora-*
decision_context: bodhi_update_push_testing
rules:
  - !PassingTestCaseRule {test_case_name: dist.depcheck}

This will enable gating for all Fedora releases based on the result of the CI Pipeline. The decision_context is to be clarified. Rules define test cases that should be considered for the gating decision, in this case dist.depcheck.

Waiving

If the failed test result is irrelevant you can waive it using the Bodhi web interface or directly from the command line.

# List blocking test results
bodhi update waive <id> --show
# Specify which tests to waive via:
bodhi update waive <id> --test="dist.rpmlint" --test="atomic-ci" "Comment explaining the waiver"
# Waive all tests:
bodhi update waive <id> --test=all "Comment explaining the waiver"

While the web UI only allows to waive all tests, command line provides a way to select tests which should be waived.

Links