[<prev] [next>] [day] [month] [year] [list]
Message-ID: <20250127185849.34131-1-leobras@redhat.com>
Date: Mon, 27 Jan 2025 15:58:49 -0300
From: Leonardo Bras <leobras@...hat.com>
To: Helen Koike <helen.koike@...labora.com>,
Vignesh Raman <vignesh.raman@...labora.com>,
Jonathan Corbet <corbet@....net>,
Leonardo Bras <leobras@...hat.com>,
Shreeya Patel <shreeya.patel@...labora.com>
Cc: kernelci@...ts.linux.dev,
linux-doc@...r.kernel.org,
linux-kernel@...r.kernel.org
Subject: [PATCH v2 1/1] gitlab-ci: Let project define runner using environment variables
Currently it's not possible to select which runner will handle a pipeline
without changing the codebase.
Add KCI_CI_TAGS environment variable, which can be used to select a runner
either from a commit message, or directly from Gitlab interface.
If not set in any way, the project will pick the default runner.
Also add Documentation for this variable.
Signed-off-by: Leonardo Bras <leobras@...hat.com>
---
Documentation/ci/gitlab-ci/gitlab-ci.rst | 5 +++++
tools/ci/gitlab-ci/gitlab-ci.yml | 2 ++
2 files changed, 7 insertions(+)
diff --git a/Documentation/ci/gitlab-ci/gitlab-ci.rst b/Documentation/ci/gitlab-ci/gitlab-ci.rst
index 940a800069238..ce89e4c093863 100644
--- a/Documentation/ci/gitlab-ci/gitlab-ci.rst
+++ b/Documentation/ci/gitlab-ci/gitlab-ci.rst
@@ -371,20 +371,25 @@ Description of Each Variable
**KCI_CHECKPATCH_OPTIONS**
Used in `checkpatch.pl "$KCI_CHECKPATCH_OPTIONS"` (see checkpatch
documentation). It is commonly used with the --ignore flag to suppress
specific warnings generated by checkpatch.pl. It can also be defined in the
commit message, since it is evaluated in run time.
**KCI_PATCH_SERIES_SIZE**
Used to define the size of the patch series, see `job: checkpatch` section
above. It is evaluated in run time, and can be set in the commit message.
+**KCI_CI_TAGS**
+ Used to help choose which runner will deal with the current pipeline.
+ Make sure to use a runner with at least 16GB of RAM, as this is required
+ to build & commit the base image.
+
.. _triggering-pipelines-from-command-line:
Triggering Pipelines from Command Line
--------------------------------------
Pipelines can be triggered from the command line with custom variables using the
`GitLab CLI tool <https://docs.gitlab.com/ee/editor_extensions/gitlab_cli>`_.
Example:
diff --git a/tools/ci/gitlab-ci/gitlab-ci.yml b/tools/ci/gitlab-ci/gitlab-ci.yml
index d2679d9929de1..f49105ee61be6 100644
--- a/tools/ci/gitlab-ci/gitlab-ci.yml
+++ b/tools/ci/gitlab-ci/gitlab-ci.yml
@@ -34,20 +34,22 @@ workflow:
variables:
SMATCH_DB_DIR: /smatch/smatch_data
# exit code of bash script on `script` will be the exit code of the job
FF_USE_NEW_BASH_EVAL_STRATEGY: "true"
KCI_SCENARIO:
description: Set to any non-empty value to disable scenarios
value: ""
default:
+ tags:
+ - $KCI_CI_TAGS
artifacts:
paths:
- artifacts/
when: always
include:
- remote: 'https://gitlab.freedesktop.org/freedesktop/ci-templates/-/raw/16bc29078de5e0a067ff84a1a199a3760d3b3811/templates/debian.yml'
- tools/ci/gitlab-ci/container.yml
- tools/ci/gitlab-ci/cache.yml
--
2.48.1
Powered by blists - more mailing lists