[PATCH 0/2] CI configuration improvements

From: Peter Hoyes Peter.Hoyes@arm.com
On our team at Arm, we would like to run the U-Boot CI on our infrastructure in order to verify patches before sending them upstream. This requires some minor changes to the Gitlab CI config which can be implemented in a backwards-compatible way.
Peter Hoyes (2): CI: Allow job tag to be optionally set globally CI: Allow a mirror to be specified for Docker Hub
.gitlab-ci.yml | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-)

From: Peter Hoyes Peter.Hoyes@arm.com
The default behavior of Gitlab runners is to only run jobs which match the configured tag, although there is an option to run untagged jobs [1].
To support running the CI in more complex environments where different types of runners may be present that support different tags, allow the DEFAULT_TAG for all jobs in the pipeline to be set globally using an environment variable. An empty default value is provided to retain support for untagged runners.
[1] https://docs.gitlab.com/ee/ci/runners/configure_runners.html#use-tags-to-con...
Signed-off-by: Peter Hoyes Peter.Hoyes@arm.com --- .gitlab-ci.yml | 7 +++++++ 1 file changed, 7 insertions(+)
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 272d69e220..d54694e016 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,5 +1,12 @@ # SPDX-License-Identifier: GPL-2.0+
+variables: + DEFAULT_TAG: "" + +default: + tags: + - ${DEFAULT_TAG} + # Grab our configured image. The source for this is found # in the u-boot tree at tools/docker/Dockerfile image: trini/u-boot-gitlab-ci-runner:jammy-20230126-10Feb2023

On Fri, 10 Mar 2023 at 01:54, Peter Hoyes peter.hoyes@arm.com wrote:
From: Peter Hoyes Peter.Hoyes@arm.com
The default behavior of Gitlab runners is to only run jobs which match the configured tag, although there is an option to run untagged jobs [1].
To support running the CI in more complex environments where different types of runners may be present that support different tags, allow the DEFAULT_TAG for all jobs in the pipeline to be set globally using an environment variable. An empty default value is provided to retain support for untagged runners.
[1] https://docs.gitlab.com/ee/ci/runners/configure_runners.html#use-tags-to-con...
Signed-off-by: Peter Hoyes Peter.Hoyes@arm.com
.gitlab-ci.yml | 7 +++++++ 1 file changed, 7 insertions(+)
Reviewed-by: Simon Glass sjg@chromium.org

On Fri, Mar 10, 2023 at 09:53:02AM +0000, Peter Hoyes wrote:
From: Peter Hoyes Peter.Hoyes@arm.com
The default behavior of Gitlab runners is to only run jobs which match the configured tag, although there is an option to run untagged jobs [1].
To support running the CI in more complex environments where different types of runners may be present that support different tags, allow the DEFAULT_TAG for all jobs in the pipeline to be set globally using an environment variable. An empty default value is provided to retain support for untagged runners.
[1] https://docs.gitlab.com/ee/ci/runners/configure_runners.html#use-tags-to-con...
Signed-off-by: Peter Hoyes Peter.Hoyes@arm.com
Reviewed-by: Tom Rini trini@konsulko.com

On Fri, Mar 10, 2023 at 09:53:02AM +0000, Peter Hoyes wrote:
From: Peter Hoyes Peter.Hoyes@arm.com
The default behavior of Gitlab runners is to only run jobs which match the configured tag, although there is an option to run untagged jobs [1].
To support running the CI in more complex environments where different types of runners may be present that support different tags, allow the DEFAULT_TAG for all jobs in the pipeline to be set globally using an environment variable. An empty default value is provided to retain support for untagged runners.
[1] https://docs.gitlab.com/ee/ci/runners/configure_runners.html#use-tags-to-con...
Signed-off-by: Peter Hoyes Peter.Hoyes@arm.com Reviewed-by: Simon Glass sjg@chromium.org Reviewed-by: Tom Rini trini@konsulko.com
Applied to u-boot/next, thanks!

From: Peter Hoyes Peter.Hoyes@arm.com
To conserve bandwidth and potentially avoid rate limits, allow a local mirror of Docker Hub to be specified globally. The default value is unchanged.
Signed-off-by: Peter Hoyes Peter.Hoyes@arm.com --- .gitlab-ci.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index d54694e016..f6bcd30124 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -2,6 +2,7 @@
variables: DEFAULT_TAG: "" + MIRROR_DOCKER: docker.io
default: tags: @@ -9,7 +10,7 @@ default:
# Grab our configured image. The source for this is found # in the u-boot tree at tools/docker/Dockerfile -image: trini/u-boot-gitlab-ci-runner:jammy-20230126-10Feb2023 +image: ${MIRROR_DOCKER}/trini/u-boot-gitlab-ci-runner:jammy-20230126-10Feb2023
# We run some tests in different order, to catch some failures quicker. stages:

On Fri, 10 Mar 2023 at 01:55, Peter Hoyes peter.hoyes@arm.com wrote:
From: Peter Hoyes Peter.Hoyes@arm.com
To conserve bandwidth and potentially avoid rate limits, allow a local mirror of Docker Hub to be specified globally. The default value is unchanged.
Signed-off-by: Peter Hoyes Peter.Hoyes@arm.com
.gitlab-ci.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)
Reviewed-by: Simon Glass sjg@chromium.org

On Fri, Mar 10, 2023 at 09:53:03AM +0000, Peter Hoyes wrote:
From: Peter Hoyes Peter.Hoyes@arm.com
To conserve bandwidth and potentially avoid rate limits, allow a local mirror of Docker Hub to be specified globally. The default value is unchanged.
Signed-off-by: Peter Hoyes Peter.Hoyes@arm.com
Oh neat. What we have the source.denx.de runners configured to have a local registry mirror.
Reviewed-by: Tom Rini trini@konsulko.com

On Fri, Mar 10, 2023 at 09:53:03AM +0000, Peter Hoyes wrote:
From: Peter Hoyes Peter.Hoyes@arm.com
To conserve bandwidth and potentially avoid rate limits, allow a local mirror of Docker Hub to be specified globally. The default value is unchanged.
Signed-off-by: Peter Hoyes Peter.Hoyes@arm.com Reviewed-by: Simon Glass sjg@chromium.org Reviewed-by: Tom Rini trini@konsulko.com
Applied to u-boot/next, thanks!
participants (3)
-
Peter Hoyes
-
Simon Glass
-
Tom Rini