Skip to content
David Esparza edited this page Jan 31, 2023 · 44 revisions

Kata currently uses a number of Continuous Integration (CI) systems:

Operation

Jenkins

The Jenkins configuration and most documentation is kept in the CI repository.

Triggering Jenkins

Jenkins is setup to trigger a CI run on all the slaves/nodes when a "magic comment" is added to a PR. These magic comments are defined in the Jenkins config.xml files in the <triggerPhrase> XML element in the CI repo.

Note:

The names of individual Jenkins GitHub checks (shown at the end of a PR) are specified inside one of the various config.xml files in the <commitStatusContext> XML element. For example:

$ grep commitStatusContext kata-containers-2.0-tests-ubuntu-PR-clh-containerd-k8s-minimal/config.xml
         <commitStatusContext>jenkins-ci-ubuntu-1804-clh-containerd-k8s-e2e-minimal</commitStatusContext>

This shows that although the directory for this job is called kata-containers-2.0-tests-ubuntu-PR-clh-containerd-k8s-minimal, the GitHub check is called jenkins-ci-ubuntu-1804-clh-containerd-k8s-e2e-minimal.

To trigger an initial CI run, add the text below as a comment:

/test

To trigger another test for the same PR (a subsequent or "re-test"), add the following as a comment:

/retest

Specific job triggers

Some jobs (such as for a particularly architecture, feature or distro) can be triggered individually, which helps target individual CIs, and saves re-triggering all CIs and consuming more CI resource than necessary. Current specific triggers are:

Phrase Triggers
/(re)test-arm (re)-trigger ARM (aarch64 / "arm64") architecture jobs
/(re)test-centos (re)-trigger CentOS distro jobs
/(re)test-fc (re)-trigger Firecracker jobs
/(re)test-dragonball (re)-trigger dragonball jobs
/(re)test-fedora (re)-trigger Fedora distro jobs
/(re)test-s390x (re)-trigger s390x architecture jobs
/(re)test-ubuntu-metrics (re)-trigger metrics jobs
/(re)test-ubuntu (re)-trigger Ubuntu distro jobs
/(re)test-vfio (re)-trigger VFIO job
/(re)test-power (re)-trigger Power (ppc64le) architecture jobs
/(re)test-clh-k8s-containerd (re)-trigger clh VIRTIOFS job
/test_kata_deploy trigger a GitHub Action kata-deploy test
/(re)test-alibaba (re)-trigger jobs for runtime-rs branch on AlibabaCloud
/(re)test-devmapper-clh (re)-trigger devmapper specific job using Cloud Hypervisor
/(re)test-devmapper-qemu (re)-trigger devmapper specific job using QEMU
/(re)test-devmapper (re)-trigger devmapper specific job for both Cloud Hypervisor and QEMU

GitHub Actions

Kata uses GitHub Actions in the kata-containers repos.

Known CI issues

See the Jenkins status page.