[PATCH i-g-t v1 1/2] gitlab-ci: Enable gitlab-ci-local runs from the primary CI definition file
Kamil Konieczny
kamil.konieczny at linux.intel.com
Wed Apr 30 16:33:53 UTC 2025
From: Ryszard Knop <dragoon at dragonic.eu>
The gitlab-ci-local tool sets GITLAB_CI to "false", so we can pick which
jobs are to be executed locally without defining them again. We just
have to override the image to make it all work.
Signed-off-by: Ryszard Knop <dragoon at dragonic.eu>
Signed-off-by: Kamil Konieczny <kamil.konieczny at linux.intel.com>
---
.gitlab-ci-local.yml | 2 ++
.gitlab-ci.yml | 30 ++++++++++++++++++++++++++++++
2 files changed, 32 insertions(+)
create mode 100644 .gitlab-ci-local.yml
diff --git a/.gitlab-ci-local.yml b/.gitlab-ci-local.yml
new file mode 100644
index 000000000..65ccc1eec
--- /dev/null
+++ b/.gitlab-ci-local.yml
@@ -0,0 +1,2 @@
+include: .gitlab-ci.yml
+image: build-igt-fedora
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index a6c076dba..ec7ce7bae 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -25,6 +25,8 @@ stages:
build-containers:build-debian:
stage: build-containers
image: registry.freedesktop.org/wayland/ci-templates/buildah:2019-08-13.0
+ rules:
+ - if: $GITLAB_CI == "true" # Skip for gitlab-ci-local runs
script:
- podman login -u gitlab-ci-token -p $CI_JOB_TOKEN $CI_REGISTRY
- .gitlab-ci/pull-or-rebuild.sh base Dockerfile.build-debian-minimal build-debian-minimal
@@ -33,6 +35,8 @@ build-containers:build-debian:
build-containers:build-debian-armhf:
stage: build-containers
image: registry.freedesktop.org/wayland/ci-templates/buildah:2019-08-13.0
+ rules:
+ - if: $GITLAB_CI == "true" # Skip for gitlab-ci-local runs
script:
- podman login -u gitlab-ci-token -p $CI_JOB_TOKEN $CI_REGISTRY
- .gitlab-ci/pull-or-rebuild.sh base Dockerfile.build-debian-armhf build-debian-armhf
@@ -40,6 +44,8 @@ build-containers:build-debian-armhf:
build-containers:build-debian-arm64:
stage: build-containers
image: registry.freedesktop.org/wayland/ci-templates/buildah:2019-08-13.0
+ rules:
+ - if: $GITLAB_CI == "true" # Skip for gitlab-ci-local runs
script:
- podman login -u gitlab-ci-token -p $CI_JOB_TOKEN $CI_REGISTRY
- .gitlab-ci/pull-or-rebuild.sh base Dockerfile.build-debian-arm64 build-debian-arm64
@@ -47,6 +53,8 @@ build-containers:build-debian-arm64:
build-containers:build-debian-mips:
stage: build-containers
image: registry.freedesktop.org/wayland/ci-templates/buildah:2019-08-13.0
+ rules:
+ - if: $GITLAB_CI == "true" # Skip for gitlab-ci-local runs
script:
- podman login -u gitlab-ci-token -p $CI_JOB_TOKEN $CI_REGISTRY
- .gitlab-ci/pull-or-rebuild.sh base Dockerfile.build-debian-mips build-debian-mips
@@ -54,6 +62,8 @@ build-containers:build-debian-mips:
build-containers:build-fedora:
stage: build-containers
image: registry.freedesktop.org/wayland/ci-templates/buildah:2019-08-13.0
+ rules:
+ - if: $GITLAB_CI == "true" # Skip for gitlab-ci-local runs
script:
- podman login -u gitlab-ci-token -p $CI_JOB_TOKEN $CI_REGISTRY
- .gitlab-ci/pull-or-rebuild.sh base Dockerfile.build-fedora build-fedora
@@ -74,6 +84,8 @@ build:tests-fedora:
build:tests-fedora-no-libunwind:
stage: build
+ rules:
+ - if: $GITLAB_CI == "true" # Skip for gitlab-ci-local runs
script:
- dnf remove -y libunwind-devel
- meson -Dlibunwind=disabled build
@@ -82,6 +94,8 @@ build:tests-fedora-no-libunwind:
# documentation building is different with meson<0.47
build:tests-fedora-oldest-meson:
stage: build
+ rules:
+ - if: $GITLAB_CI == "true" # Skip for gitlab-ci-local runs
script:
- dnf remove -y meson
- pip install /usr/src/meson-*.tar.gz
@@ -92,6 +106,8 @@ build:tests-fedora-oldest-meson:
# ensure igt_nouveau stubs build when nouveau support for libdrm is disabled
build:tests-fedora-no-libdrm-nouveau:
stage: build
+ rules:
+ - if: $GITLAB_CI == "true" # Skip for gitlab-ci-local runs
script:
- meson -Dlibdrm_drivers= build
- ninja -C build -j${FDO_CI_CONCURRENT:-4} || ninja -C build -j 1
@@ -110,6 +126,8 @@ build:tests-fedora-clang:
build:tests-debian-meson:
image: $CI_REGISTRY/$CI_PROJECT_PATH/build-debian:commit-$CI_COMMIT_SHA
stage: build
+ rules:
+ - if: $GITLAB_CI == "true" # Skip for gitlab-ci-local runs
script:
- meson $MESON_OPTIONS build
- ninja -C build -j${FDO_CI_CONCURRENT:-4} || ninja -C build -j 1
@@ -121,6 +139,8 @@ build:tests-debian-meson:
build:tests-debian-minimal:
image: $CI_REGISTRY/$CI_PROJECT_PATH/build-debian-minimal:commit-$CI_COMMIT_SHA
stage: build
+ rules:
+ - if: $GITLAB_CI == "true" # Skip for gitlab-ci-local runs
script:
- meson -Dtests=disabled -Dlibdrm_drivers="" build
- ninja -C build -j${FDO_CI_CONCURRENT:-4} || ninja -C build -j 1
@@ -131,6 +151,8 @@ build:tests-debian-minimal:
build:tests-debian-meson-armhf:
image: $CI_REGISTRY/$CI_PROJECT_PATH/build-debian-armhf:commit-$CI_COMMIT_SHA
stage: build
+ rules:
+ - if: $GITLAB_CI == "true" # Skip for gitlab-ci-local runs
script:
- export PKG_CONFIG_PATH=/usr/lib/arm-linux-gnueabihf/pkgconfig/
- meson --cross-file meson-cross-armhf.txt build
@@ -142,6 +164,8 @@ build:tests-debian-meson-armhf:
build:tests-debian-meson-arm64:
image: $CI_REGISTRY/$CI_PROJECT_PATH/build-debian-arm64:commit-$CI_COMMIT_SHA
stage: build
+ rules:
+ - if: $GITLAB_CI == "true" # Skip for gitlab-ci-local runs
script:
- export PKG_CONFIG_PATH=/usr/lib/aarch64-linux-gnu/pkgconfig/
- meson --cross-file meson-cross-arm64.txt build
@@ -153,6 +177,8 @@ build:tests-debian-meson-arm64:
build:tests-debian-meson-mips:
image: $CI_REGISTRY/$CI_PROJECT_PATH/build-debian-mips:commit-$CI_COMMIT_SHA
stage: build
+ rules:
+ - if: $GITLAB_CI == "true" # Skip for gitlab-ci-local runs
script:
- export PKG_CONFIG_PATH=/usr/lib/mips-linux-gnu/pkgconfig/
- meson --cross-file meson-cross-mips.txt build
@@ -180,6 +206,8 @@ test:ninja-test-clang:
script: meson test -C build --num-processes ${FDO_CI_CONCURRENT:-4}
test:ninja-test-minimal:
+ rules:
+ - if: $GITLAB_CI == "true" # Skip for gitlab-ci-local runs
retry: 2
image: $CI_REGISTRY/$CI_PROJECT_PATH/build-debian-minimal:commit-$CI_COMMIT_SHA
dependencies:
@@ -268,6 +296,8 @@ pages:
############## CONTAINERS ####################
containers:igt:
+ rules:
+ - if: $GITLAB_CI == "true" # Skip for gitlab-ci-local runs
stage: containers
image: registry.freedesktop.org/wayland/ci-templates/buildah:2019-08-13.0
dependencies:
--
2.49.0
More information about the igt-dev
mailing list