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"

  • 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.

Table 1. Table Queue <→ pipeline
Queue Pipeline URL

osci-pipelines-queue-0

https://jenkins-continuous-infra.apps.ci.centos.org/job/fedora-image-test-trigger

osci-pipelines-queue-1

https://jenkins-continuous-infra.apps.ci.centos.org/job/fedora-build-pipeline-trigger

osci-pipelines-queue-2

https://jenkins-continuous-infra.apps.ci.centos.org/job/fedora-pr-new-trigger

osci-pipelines-queue-3

https://jenkins-continuous-infra.apps.ci.centos.org/job/fedora-task-pipeline-trigger/

osci-pipelines-queue-4

https://osci-jenkins.ci.fedoraproject.org/job/RabbitMQ_Copr_Heartbeat/

osci-pipelines-queue-6

https://jenkins-continuous-infra.apps.ci.centos.org/job/fedora-stage-build-trigger

osci-pipelines-queue-7

https://jenkins-continuous-infra.apps.ci.centos.org/job/fedora-stage-pr-new-trigger

osci-pipelines-queue-8

https://jenkins-continuous-infra.apps.ci.centos.org/job/fedora-stage-pr-comment-trigger

osci-pipelines-queue-9

https://jenkins-continuous-infra.apps.ci.centos.org/job/fedora-pr-comment-trigger

osci-pipelines-queue-10

https://osci-jenkins-1.ci.fedoraproject.org/job/fedora-ci/job/rpminspect-trigger/job/master/

osci-pipelines-queue-11

https://osci-jenkins-1.ci.fedoraproject.org/job/fedora-ci/job/dist-git-trigger/job/master/

osci-pipelines-queue-12

https://osci-jenkins-1.ci.fedoraproject.org/view/ELN/job/eln-build-trigger/

osci-pipelines-queue-14

https://jenkins-continuous-infra.apps.ci.centos.org/view/Fedora-Pipelines/job/fedora-ci/job/installability-trigger/

osci-pipelines-queue-15

https://jenkins-continuous-infra.apps.ci.centos.org/view/Fedora-Pipelines/job/fedora-ci/job/rpmdeplint-trigger/

osci-pipelines-queue-X

Each pipelline must reserve queue here

Contact

  • Andrei Stepanov (astepano)

  • Bruno Goncalves (bgoncalv)

  • Jim Bair (jimbair)

  • Tim Flink (tflink)