1# The CI jobs defined here require GitLab runners installed and
2# registered on machines that match their operating system names,
3# versions and architectures.  This is in contrast to the other CI
4# jobs that are intended to run on GitLab's "shared" runners.
5
6# Different than the default approach on "shared" runners, based on
7# containers, the custom runners have no such *requirement*, as those
8# jobs should be capable of running on operating systems with no
9# compatible container implementation, or no support from
10# gitlab-runner.  To avoid problems that gitlab-runner can cause while
11# reusing the GIT repository, let's enable the clone strategy, which
12# guarantees a fresh repository on each job run.
13variables:
14  GIT_STRATEGY: clone
15
16# All custom runners can extend this template to upload the testlog
17# data as an artifact and also feed the junit report
18.custom_runner_template:
19  extends: .base_job_template
20  artifacts:
21    name: "$CI_JOB_NAME-$CI_COMMIT_REF_SLUG"
22    expire_in: 7 days
23    when: always
24    paths:
25      - build/build.ninja
26      - build/meson-logs
27    reports:
28      junit: build/meson-logs/testlog.junit.xml
29
30include:
31  - local: '/.gitlab-ci.d/custom-runners/ubuntu-20.04-s390x.yml'
32  - local: '/.gitlab-ci.d/custom-runners/ubuntu-22.04-aarch64.yml'
33  - local: '/.gitlab-ci.d/custom-runners/ubuntu-22.04-aarch32.yml'
34  - local: '/.gitlab-ci.d/custom-runners/centos-stream-8-x86_64.yml'
35