On 3/11/20 7:14 PM, Aleksandra Fedorova wrote:
Hi, all.
Here is the summary of CI-related work happening in Fedora.
If you have questions or topics to discuss you can also join Fedora CI SIG bi-weekly meeting. Next session is today in #fedora-ci IRC channel at 15:30 UTC
https://apps.fedoraproject.org/calendar/SIGs/#m9618
========================================================
### Dist-git tests support multipackage updates
You can define package tests in dist-git via STR format
https://docs.fedoraproject.org/en-US/ci/standard-test-roles/
Note that dist-git/STR tests are different from running %check tests in the rpm building phase. STR tests are executed in a clean virtual machine with proper setup of repositories for the latest Fedora Rawhide packages. This environment is better suited for integration tests, which need to test the installed package, not the sources of it.
Dist-git tests are fully compatible with the dynamic sidetag approach: if you create a dynamic sidetag for the multi-package update, test environment will be created with the content of the entire sidetag, not an individual package.
Status: Ready to Use Contact: Bruno Goncalves (bgoncalv) and #fedora-ci IRC channel.
### New test: rpminspect
There is a new rpminspect test running in Fedora Rawhide gating enabled by default for all packages in a non-blocking mode.
More details: https://github.com/rpminspect/rpminspect
Status: Ready to Use Contact: David Cantrell (dcantrell)
Thanks for sending out all this information, Aleksandra :)
I also want to call out Tim Flink (irc: tflink) from Fedora QA team who worked extensively on getting rpminspect to run in a way that its results could show up in bodhi.
### Tests for pull-requests via Zuul
Zuul team has enabled Zuul CI engine to test Pagure pull requests.
You can opt-in to Zuul CI per package.
On every pull-request Zuul will
run a scratch build
run rpminspect on that build
run dist-git test defined in STR format(if available)
provide comment in the pull-request
wait for you to put an manual approval on the PR
merge the PR
you can also get Zuul to handle merge events, so that it will
automatically build the regular koji build, after the merge.
Zuul now has support for EPEL8 branches.
More details: https://fedoraproject.org/wiki/Zuul-based-ci
Status: Ready to use Contact: Fabien Boucher (fbo)
### Koschei as a gating test
With sidetag gating feature enabled it is now possible to run Koschei for each dynamic sidetag and make it a part of the gating process.
We do have Koschei deployed on Fedora infrastructure. There is on-going work by Mikolaj Izdebski to get it integrated with the Fedora Messaging, so that sidetags are submitted in Koschei when created.
Status: research and prototyping Contact: Serhii Turivnyi (sturivny)
### Infra change: new Jenkins master
New Jenkins master to run generic tests and inherit Taskotron pipelines.
Our current Jenkins master, which is used for dist-git tests, was not updated for some time and it is by design bundled to the pipeline it runs. So adding new pipelines and separating pipelines from the Jenkins master configuration is problematic.
The goal here is to have a Jenkins master setup which is easy to update. It will have a set of plugins pre-installed and configured for Fedora infrastructure endpoints, but jobs configuration will be applied to it independently.
More details: Current work is done on a Communishift project. Code will be available soon at https://github.com/fedora-ci
Status: WIP Contact: Jim Bair (jbair)
### Infra change: common repository and common format for generic tests
We are refactoring the Groovy pipeline library so it is better suited to run generic tests.
One of the goals is that generic tests are all run in the same way, and you don’t need to add a lot of new Groovy code to add a certain bash script as a generic test.
We’d like people to be able to contribute new generic tests without prior knowledge of the Jenkins internal setup.
Current focus is rpmdeplint and rpminspect pipelines.
More details: https://github.com/fedora-ci
Status: WIP Contact: Michal Srb (msrb)
### Infra change: ODCS composes
We are updating ODCS staging infrastructure to the latest ODCS release. Once the Fedora instractructure freeze is over, we will also update the ODCS production instance. This work is preparation for possible further use of ODCS to generate composes used by Fedora CI as well as main Fedora composes.
Status: WIP Contact: Jan Kaluza (jkaluza)
### Infra change: Testing Farm Service
Testing Farm Team is working on open-sourcing parts of the RH internal CI infrastructure as a service, which will be used by Fedora CI's general tests and functional tests pipeline. The main input of the service will be test definitions in the TMT/FMF format.
TMT documentation: https://tmt.readthedocs.io/en/latest/ (recently added testcloud + podman provisioner)
Code is hosted at GitLab: https://gitlab.com/testing-farm/
Status: WIP (preview May 2020, GA August 2020) Contact: Miroslav Vadkerti (mvadkert)
### CI and Gating documentation
There is a repository of CI documentation
https://pagure.io/fedora-ci/docs/
The docs are published at
https://docs.fedoraproject.org/en-US/ci/
Then there is another repository with docs on Rawhide Gating:
https://pagure.io/cpe/rawhide-gating-docs/
And result is available at:
https://docs.fedoraproject.org/en-US/rawhide-gating/
There are some rather deep or generic items there, which are not always suitable for newcomers and are not easy to consume.
What I think we need is a smaller scale how-to’s answering specific questions and implementing specific use-cases, which hook the CI and gating into the packager workflow.
If you have experience with sidetag gating or CI in Fedora and figured out the way how _you_ work with it, please share.
You can drop me a mail or write a draft page and send a pull request to one of the repositories. We will figure out later in which section to land it.
Status: Needs help Contact: Aleksandra Fedorova (bookwar)
### Testing of GitHub PRs via Packit / Testing Farm on Fedora/CentOS
Packit service makes it possible to test copr builds built from GitHub PRs on all Fedora released (including Rawhide), CentOS 6/7 and CentOS stream via Testing Farm. Note that the Testing Farm deployed for Packit is different from the one we are open sourcing, and once that is ready i will replace this one.
Documentation: https://packit.dev/testing-farm/
Status: In production (since August 2019) Contact: Miroslav Vadkerti (mvadkert)
========================================================
For any of those topics you can contact Fedora CI SIG at #fedora-ci IRC channel.