From: Cleber Rosa <crosa@redhat.com>
To: qemu-devel@nongnu.org, "Alex Bennée" <alex.bennee@linaro.org>,
"Peter Maydell" <peter.maydell@linaro.org>
Cc: "Fam Zheng" <fam@euphon.net>, "Thomas Huth" <thuth@redhat.com>,
"Daniel P . Berrangé" <berrange@redhat.com>,
"Eduardo Habkost" <ehabkost@redhat.com>,
"Erik Skultety" <eskultet@redhat.com>,
"Stefan Hajnoczi" <stefanha@gmail.com>,
"Andrea Bolognani" <abologna@redhat.com>,
"Wainer dos Santos Moschetta" <wainersm@redhat.com>,
"Willian Rampazzo" <wrampazz@redhat.com>,
"Cleber Rosa" <crosa@redhat.com>,
"Philippe Mathieu-Daudé" <philmd@redhat.com>,
"Beraldo Leal" <bleal@redhat.com>
Subject: [PATCH v5 1/4] Jobs based on custom runners: documentation and configuration placeholder
Date: Fri, 19 Feb 2021 16:58:35 -0500 [thread overview]
Message-ID: <20210219215838.752547-2-crosa@redhat.com> (raw)
In-Reply-To: <20210219215838.752547-1-crosa@redhat.com>
As described in the included documentation, the "custom runner" jobs
extend the GitLab CI jobs already in place. One of their primary
goals of catching and preventing regressions on a wider number of host
systems than the ones provided by GitLab's shared runners.
This sets the stage in which other community members can add their own
machine configuration documentation/scripts, and accompanying job
definitions. As a general rule, those newly added contributed jobs
should run as "non-gating", until their reliability is verified (AKA
"allow_failure: true").
Signed-off-by: Cleber Rosa <crosa@redhat.com>
---
.gitlab-ci.d/custom-runners.yml | 14 ++++++++++++++
.gitlab-ci.yml | 1 +
docs/devel/ci.rst | 28 ++++++++++++++++++++++++++++
docs/devel/index.rst | 1 +
4 files changed, 44 insertions(+)
create mode 100644 .gitlab-ci.d/custom-runners.yml
create mode 100644 docs/devel/ci.rst
diff --git a/.gitlab-ci.d/custom-runners.yml b/.gitlab-ci.d/custom-runners.yml
new file mode 100644
index 0000000000..3004da2bda
--- /dev/null
+++ b/.gitlab-ci.d/custom-runners.yml
@@ -0,0 +1,14 @@
+# The CI jobs defined here require GitLab runners installed and
+# registered on machines that match their operating system names,
+# versions and architectures. This is in contrast to the other CI
+# jobs that are intended to run on GitLab's "shared" runners.
+
+# Different than the default approach on "shared" runners, based on
+# containers, the custom runners have no such *requirement*, as those
+# jobs should be capable of running on operating systems with no
+# compatible container implementation, or no support from
+# gitlab-runner. To avoid problems that gitlab-runner can cause while
+# reusing the GIT repository, let's enable the recursive submodule
+# strategy.
+variables:
+ GIT_SUBMODULE_STRATEGY: recursive
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 8b6d495288..ae19442e93 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -12,6 +12,7 @@ include:
- local: '/.gitlab-ci.d/opensbi.yml'
- local: '/.gitlab-ci.d/containers.yml'
- local: '/.gitlab-ci.d/crossbuilds.yml'
+ - local: '/.gitlab-ci.d/custom-runners.yml'
.native_build_job_template: &native_build_job_definition
stage: build
diff --git a/docs/devel/ci.rst b/docs/devel/ci.rst
new file mode 100644
index 0000000000..585b7bf4b8
--- /dev/null
+++ b/docs/devel/ci.rst
@@ -0,0 +1,28 @@
+==
+CI
+==
+
+QEMU has configurations enabled for a number of different CI services.
+The most up to date information about them and their status can be
+found at::
+
+ https://wiki.qemu.org/Testing/CI
+
+Jobs on Custom Runners
+======================
+
+Besides the jobs run under the various CI systems listed before, there
+are a number additional jobs that will run before an actual merge.
+These use the same GitLab CI's service/framework already used for all
+other GitLab based CI jobs, but rely on additional systems, not the
+ones provided by GitLab as "shared runners".
+
+The architecture of GitLab's CI service allows different machines to
+be set up with GitLab's "agent", called gitlab-runner, which will take
+care of running jobs created by events such as a push to a branch.
+Here, the combination of a machine, properly configured with GitLab's
+gitlab-runner, is called a "custom runner".
+
+The GitLab CI jobs definition for the custom runners are located under::
+
+ .gitlab-ci.d/custom-runners.yml
diff --git a/docs/devel/index.rst b/docs/devel/index.rst
index 22854e334d..b178448a91 100644
--- a/docs/devel/index.rst
+++ b/docs/devel/index.rst
@@ -23,6 +23,7 @@ Contents:
migration
atomics
stable-process
+ ci
qtest
decodetree
secure-coding-practices
--
2.25.4
next prev parent reply other threads:[~2021-02-19 22:00 UTC|newest]
Thread overview: 48+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-02-19 21:58 [PATCH v5 0/4] GitLab Custom Runners and Jobs (was: QEMU Gating CI) Cleber Rosa
2021-02-19 21:58 ` Cleber Rosa [this message]
2021-02-23 11:18 ` [PATCH v5 1/4] Jobs based on custom runners: documentation and configuration placeholder Alex Bennée
2021-02-23 11:25 ` Thomas Huth
2021-02-23 16:37 ` Philippe Mathieu-Daudé
2021-02-23 16:47 ` Cleber Rosa
2021-02-23 17:24 ` Philippe Mathieu-Daudé
2021-02-23 17:34 ` Philippe Mathieu-Daudé
2021-02-23 18:09 ` Cleber Rosa
2021-02-24 11:57 ` Philippe Mathieu-Daudé
2021-02-24 15:47 ` Cleber Rosa
2021-02-23 17:45 ` Daniel P. Berrangé
2021-02-23 21:34 ` Wainer dos Santos Moschetta
2021-02-19 21:58 ` [PATCH v5 2/4] Jobs based on custom runners: build environment docs and playbook Cleber Rosa
2021-02-22 19:36 ` Wainer dos Santos Moschetta
2021-02-23 14:01 ` Alex Bennée
2021-02-23 14:51 ` Erik Skultety
2021-02-23 15:17 ` Alex Bennée
2021-02-23 17:23 ` Cleber Rosa
2021-02-23 18:18 ` Alex Bennée
2021-02-23 17:13 ` Cleber Rosa
2021-02-23 15:01 ` Alex Bennée
2021-02-23 17:44 ` Cleber Rosa
2021-02-23 18:23 ` Alex Bennée
2021-02-23 19:47 ` Cleber Rosa
2021-02-23 17:08 ` Cleber Rosa
2021-02-23 18:16 ` Alex Bennée
2021-02-19 21:58 ` [PATCH v5 3/4] Jobs based on custom runners: docs and gitlab-runner setup playbook Cleber Rosa
2021-02-22 6:36 ` Erik Skultety
2021-02-22 20:35 ` Wainer dos Santos Moschetta
2021-02-23 13:52 ` Philippe Mathieu-Daudé
2021-02-23 13:55 ` Philippe Mathieu-Daudé
2021-02-23 14:14 ` Philippe Mathieu-Daudé
2021-02-23 15:15 ` Alex Bennée
2021-02-19 21:58 ` [PATCH v5 4/4] Jobs based on custom runners: add job definitions for QEMU's machines Cleber Rosa
2021-02-23 15:17 ` Philippe Mathieu-Daudé
2021-02-23 15:56 ` Daniel P. Berrangé
2021-02-23 16:41 ` Philippe Mathieu-Daudé
2021-02-23 18:25 ` Cleber Rosa
2021-02-24 12:00 ` Philippe Mathieu-Daudé
2021-02-24 15:54 ` Cleber Rosa
2021-02-23 18:21 ` Cleber Rosa
2021-02-23 15:27 ` Philippe Mathieu-Daudé
2021-02-23 15:35 ` Philippe Mathieu-Daudé
2021-02-23 15:45 ` Daniel P. Berrangé
2021-03-05 10:14 ` [PATCH v5 0/4] GitLab Custom Runners and Jobs (was: QEMU Gating CI) Philippe Mathieu-Daudé
2021-03-05 10:27 ` Philippe Mathieu-Daudé
2021-05-21 10:29 ` Alex Bennée
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20210219215838.752547-2-crosa@redhat.com \
--to=crosa@redhat.com \
--cc=abologna@redhat.com \
--cc=alex.bennee@linaro.org \
--cc=berrange@redhat.com \
--cc=bleal@redhat.com \
--cc=ehabkost@redhat.com \
--cc=eskultet@redhat.com \
--cc=fam@euphon.net \
--cc=peter.maydell@linaro.org \
--cc=philmd@redhat.com \
--cc=qemu-devel@nongnu.org \
--cc=stefanha@gmail.com \
--cc=thuth@redhat.com \
--cc=wainersm@redhat.com \
--cc=wrampazz@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).