Files
xen/.gitlab-ci.yml
Marek Marczykowski-Górecki a183f7fbe7 CI: introduce BUILD_FOR_TESTS_ONLY
When the variable is set, only build jobs that are used in tests are
scheduled. This saves a lot of time, for example when scheduling a test
pipeline with alternative linux branch.

Signed-off-by: Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
Reviewed-by: Anthony PERARD <anthony.perard@vates.tech>
2026-04-23 17:39:55 +02:00

47 lines
1.4 KiB
YAML

variables:
XEN_REGISTRY: registry.gitlab.com/xen-project/xen
SELECTED_JOBS_ONLY:
description: "Regex to select only some jobs, must be enclosed with /. For example /job1|job2/"
value: "/.*/"
BUILD_FOR_TESTS_ONLY:
description: "Include only build jobs necessary for running tests"
ARTIFACTS_REPO:
description: "Path to the test-artifacts repo"
value: xen-project/hardware/test-artifacts
ARTIFACTS_BRANCH:
description: "Branch in test-artifacts to use"
value: master
LINUX_JOB_X86_64:
description: "Job name in test-artifacts to use for Linux x86_64"
value: linux-6.6.56-x86_64
LINUX_JOB_ARM64:
description: "Job name in test-artifacts to use for Linux arm64"
value: linux-6.6.86-arm64
workflow:
name: "$CI_PIPELINE_SCHEDULE_DESCRIPTION"
rules:
- if: $CI_COMMIT_BRANCH =~ /^(master|smoke|^coverity-tested\/.*|stable-.*)$/
when: never
- when: always
stages:
- containers
- analyze
- build
- test
include:
- local: 'automation/gitlab-ci/containers.yaml'
rules:
- if: $XEN_CI_REBUILD_CONTAINERS
- local: 'automation/gitlab-ci/analyze.yaml'
rules:
- if: $XEN_CI_REBUILD_CONTAINERS == null
- local: 'automation/gitlab-ci/build.yaml'
rules:
- if: $XEN_CI_REBUILD_CONTAINERS == null
- local: 'automation/gitlab-ci/test.yaml'
rules:
- if: $XEN_CI_REBUILD_CONTAINERS == null