Jenkins
The Fedora CI team relies heavily on Jenkins automation for testing builds in Fedora.
Setup
Our Jenkins instances are configured with OpenID to allow admins in the fedora-ci-admins group admin access.
To configure this, you simply need to:
-
install the OpenID plugin
-
As an admin, go to Jenkins → Configure Global Security
-
Under Access Control, change Security Realm to "OpenID SSO"
-
Set Provider URL to:
https://id.fedoraproject.org/
-
-
Under Authorization, set to "Project-based Matrix Authorization Strategy"
-
Add
fedora-ci-admins
and check the "Administer" box in the Overall column
-
-
Once you save/apply this config, you may need to logout/login to re-apply your permissions
-
NOTE: OpenID does pulls from groups in Jenkins without any custom prefixes required
-
Notes
The Fedora CI team has recently created an organiation in github here: Fedora CI github
The goal is to move all of our repos under this org in the near future.
RabbitMQ and pipelines
The same pipeline cannot be used twice by two different pipelines.
Each Jenkins job that uses one of osci rabbitmq queue must have entry in the table bellow.
Queue | Pipeline URL |
---|---|
osci-pipelines-queue-0 |
|
osci-pipelines-queue-1 |
|
osci-pipelines-queue-2 |
https://jenkins-continuous-infra.apps.ci.centos.org/job/fedora-pr-new-trigger |
osci-pipelines-queue-3 |
|
osci-pipelines-queue-4 |
https://osci-jenkins.ci.fedoraproject.org/job/RabbitMQ_Copr_Heartbeat/ |
osci-pipelines-queue-6 |
|
osci-pipelines-queue-7 |
|
osci-pipelines-queue-8 |
|
osci-pipelines-queue-9 |
|
osci-pipelines-queue-10 |
|
osci-pipelines-queue-11 |
|
osci-pipelines-queue-12 |
https://osci-jenkins-1.ci.fedoraproject.org/view/ELN/job/eln-build-trigger/ |
osci-pipelines-queue-14 |
|
osci-pipelines-queue-15 |
|
osci-pipelines-queue-X |
Each pipelline must reserve queue here |
Want to help? Learn how to contribute to Fedora Docs ›