The idea about a public facing Gating CI for QEMU was lastly summarized in an RFC[1]. Since then, it was decided that a simpler version should be attempted first.
Changes from the RFC patches[2] accompanying the RFC document: - Moved gating job definitions to .gitlab-ci-gating.yml - Added info on "--disable-libssh" build option requirement (https://bugs.launchpad.net/qemu/+bug/1838763) to Ubuntu 18.04 jobs - Added info on "--disable-glusterfs" build option requirement (there's no static version of those libs in distro supplied packages) to one - Dropped ubuntu-18.04.3-x86_64-notools job definition, because it doesn't fall into the general scope of gating job described by PMM (and it did not run any test) - Added w32 and w64 cross builds based on Fedora 30 - Added a FreeBSD based job that builds all targets and runs `make check` - Added "-j`nproc`" and "-j`sysctl -n hw.ncpu`" options to make as a simple but effective way of speeding up the builds and tests by using a number of make jobs matching the number of CPUs - Because the Ansible playbooks reference the content on Dockerfiles, some fixes to some Dockerfiles caught in the process were included - New patch with script to check or wait on a pipeline execution [1] - https://lists.gnu.org/archive/html/qemu-devel/2019-12/msg00231.html [2] - https://lists.gnu.org/archive/html/qemu-devel/2020-02/msg00154.html Cleber Rosa (5): tests/docker: add CentOS 8 Dockerfile tests/docker: make "buildah bud" output similar to "docker build" GitLab CI: avoid calling before_scripts on unintended jobs GitLab Gating CI: introduce pipeline-status contrib script GitLab Gating CI: initial set of jobs, documentation and scripts .gitlab-ci-gating.yml | 111 ++++++++++ .gitlab-ci.yml | 32 ++- contrib/ci/orgs/qemu/build-environment.yml | 208 ++++++++++++++++++ contrib/ci/orgs/qemu/gitlab-runner.yml | 65 ++++++ contrib/ci/orgs/qemu/inventory | 2 + contrib/ci/orgs/qemu/vars.yml | 13 ++ contrib/ci/scripts/gitlab-pipeline-status | 148 +++++++++++++ docs/devel/testing.rst | 142 ++++++++++++ tests/docker/dockerfiles/centos8.docker | 32 +++ .../dockerfiles/debian-win32-cross.docker | 2 +- 10 files changed, 751 insertions(+), 4 deletions(-) create mode 100644 .gitlab-ci-gating.yml create mode 100644 contrib/ci/orgs/qemu/build-environment.yml create mode 100644 contrib/ci/orgs/qemu/gitlab-runner.yml create mode 100644 contrib/ci/orgs/qemu/inventory create mode 100644 contrib/ci/orgs/qemu/vars.yml create mode 100755 contrib/ci/scripts/gitlab-pipeline-status create mode 100644 tests/docker/dockerfiles/centos8.docker -- 2.24.1