mbox series

[0/4] Jobs based on custom runners: add CentOS Stream 8

Message ID 20210608140938.863580-1-crosa@redhat.com (mailing list archive)
Headers show
Series Jobs based on custom runners: add CentOS Stream 8 | expand

Message

Cleber Rosa June 8, 2021, 2:09 p.m. UTC
This builds on top the "GitLab Custom Runners and Jobs (was: QEMU
Gating CI)" series, showing an example of how other entities can
add their own custom jobs to the GitLab CI pipeline.

First of all, it may be useful to see an actual pipeline (and the
reespective job introduced here) combined with the jobs introduced
on "GitLab Custom Runners and Jobs (was: QEMU Gating CI)":

 * https://gitlab.com/cleber.gnu/qemu/-/pipelines/316527166
 * https://gitlab.com/cleber.gnu/qemu/-/jobs/1325976765

The runner (the machine and job) is to be managed by Red Hat, and
adds, at the very least, bare metal x86_64 KVM testing capabilities to
the QEMU pipeline.  This brings extra coverage for some unittests, and
the ability to run the acceptance tests dependent on KVM.

The runner is already completely set up and registered to the
https://gitlab.com/qemu-project/qemu project instance, and jobs will
be triggered according to the same rules for the jobs introduced on
"GitLab Custom Runners and Jobs (was: QEMU Gating CI)", that is,
but pushes to the staging branch.  Still, the job is set with mode
"allow failures", so it should not disrupt the existing pipeline.
Once its reliability is proved (rules and service levels are to be
determined), that can be reverted.

Even though the formal method of tracking machine/job maintainers have
not been formalized, it should be known that the contacts/admins for
this machine and job are:

 - Cleber Rosa
   <crosa@redhat.com>
   clebergnu on #qemu

 - Willian Rampazzo
   <willianr@redhat.com>
   willianr on #qemu

Based-on: <20210608031425.833536-1-crosa@redhat.com>

Cleber Rosa (4):
  block.c: fix compilation error on possible unitialized variable
  Python QEMU utils: introduce a generic feature list
  Acceptance Tests: introduce method to require a feature and option
  Jobs based on custom runners: add CentOS Stream 8

 .gitlab-ci.d/custom-runners.yml           |  29 ++++
 block.c                                   |   2 +-
 python/qemu/utils/__init__.py             |   2 +
 python/qemu/utils/accel.py                |  15 +-
 python/qemu/utils/feature.py              |  44 +++++
 scripts/ci/org.centos/stream/README       |   2 +
 scripts/ci/org.centos/stream/configure    | 190 ++++++++++++++++++++++
 scripts/ci/setup/build-environment.yml    |  38 +++++
 tests/acceptance/avocado_qemu/__init__.py |  29 +++-
 tests/acceptance/multiprocess.py          |   1 +
 10 files changed, 337 insertions(+), 15 deletions(-)
 create mode 100644 python/qemu/utils/feature.py
 create mode 100644 scripts/ci/org.centos/stream/README
 create mode 100755 scripts/ci/org.centos/stream/configure

Comments

Willian Rampazzo June 10, 2021, 6:40 p.m. UTC | #1
On Tue, Jun 8, 2021 at 11:09 AM Cleber Rosa <crosa@redhat.com> wrote:
>
> This builds on top the "GitLab Custom Runners and Jobs (was: QEMU
> Gating CI)" series, showing an example of how other entities can
> add their own custom jobs to the GitLab CI pipeline.
>
> First of all, it may be useful to see an actual pipeline (and the
> reespective job introduced here) combined with the jobs introduced
> on "GitLab Custom Runners and Jobs (was: QEMU Gating CI)":
>
>  * https://gitlab.com/cleber.gnu/qemu/-/pipelines/316527166
>  * https://gitlab.com/cleber.gnu/qemu/-/jobs/1325976765
>
> The runner (the machine and job) is to be managed by Red Hat, and
> adds, at the very least, bare metal x86_64 KVM testing capabilities to
> the QEMU pipeline.  This brings extra coverage for some unittests, and
> the ability to run the acceptance tests dependent on KVM.
>
> The runner is already completely set up and registered to the
> https://gitlab.com/qemu-project/qemu project instance, and jobs will
> be triggered according to the same rules for the jobs introduced on
> "GitLab Custom Runners and Jobs (was: QEMU Gating CI)", that is,
> but pushes to the staging branch.  Still, the job is set with mode
> "allow failures", so it should not disrupt the existing pipeline.
> Once its reliability is proved (rules and service levels are to be
> determined), that can be reverted.
>
> Even though the formal method of tracking machine/job maintainers have
> not been formalized, it should be known that the contacts/admins for
> this machine and job are:
>
>  - Cleber Rosa
>    <crosa@redhat.com>
>    clebergnu on #qemu
>
>  - Willian Rampazzo
>    <willianr@redhat.com>
>    willianr on #qemu

Acked-by: Willian Rampazzo <willianr@redhat.com>