Files
meta-zephyr/.gitlab-ci.yml
Peter Hoyes 64e1fbbaa9 CI: add tags to all jobs
Tag all jobs with the DEFAULT_TAG variable so each instance can control
what tags the jobs have.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Jon Mason <jon.mason@arm.com>
Signed-off-by: Peter Hoyes <Peter.Hoyes@arm.com>
Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
2022-12-19 17:29:57 +08:00

169 lines
3.2 KiB
YAML

image: ghcr.io/siemens/kas/kas:latest-release
variables:
CPU_REQUEST: ""
DEFAULT_TAG: ""
# These are needed as the k8s executor doesn't respect the container
# entrypoint by default
FF_USE_LEGACY_KUBERNETES_EXECUTION_STRATEGY: 0
FF_KUBERNETES_HONOR_ENTRYPOINT: 1
stages:
- prep
- build
# Common job fragment to get a worker ready
.setup:
tags:
- $DEFAULT_TAG
stage: build
interruptible: true
variables:
KAS_WORK_DIR: $CI_PROJECT_DIR/work
KAS_REPO_REF_DIR: $CI_BUILDS_DIR/persist/repos
SSTATE_DIR: $CI_BUILDS_DIR/persist/sstate
DL_DIR: $CI_BUILDS_DIR/persist/downloads
BB_LOGCONFIG: $CI_PROJECT_DIR/ci/logging.yml
before_script:
- echo KAS_WORK_DIR = $KAS_WORK_DIR
- echo SSTATE_DIR = $SSTATE_DIR
- echo DL_DIR = $DL_DIR
- rm -rf $KAS_WORK_DIR
- mkdir --verbose --parents $KAS_WORK_DIR $KAS_REPO_REF_DIR $SSTATE_DIR $DL_DIR
# Generalised fragment to do a Kas build
.build:
extends: .setup
variables:
KUBERNETES_CPU_REQUEST: $CPU_REQUEST
script:
- KASFILES=$(./ci/jobs-to-kas "$CI_JOB_NAME")
- kas shell --update --force-checkout $KASFILES -c 'cat conf/*.conf'
- kas build $KASFILES
- ./ci/check-warnings $KAS_WORK_DIR/build/warnings.log
artifacts:
name: "logs"
when: on_failure
paths:
- $CI_PROJECT_DIR/work/build/tmp/work*/**/temp/log.do_*.*
#
# Prep stage, update repositories once
#
update-repos:
extends: .setup
stage: prep
script:
- flock --verbose --timeout 60 $KAS_REPO_REF_DIR ./ci/update-repos
#
# Bootstrap stage, machine coverage
#
# What percentage of machines in the layer do we build
machine-coverage:
stage: prep
interruptible: true
script:
- ./ci/check-machine-coverage
coverage: '/Coverage: \d+/'
tags:
- $DEFAULT_TAG
#
# Build stage, the actual build jobs
#
96b-avenger96:
extends: .build
96b-nitrogen:
extends: .build
arduino-nano-33-ble:
extends: .build
frdm-kw41z:
extends: .build
intel-x86-64:
extends: .build
mps2-an385:
extends: .build
parallel:
matrix:
- TOOLCHAIN: [default, zephyr-toolchain]
TESTING: testimage
mps2-an521:
extends: .build
parallel:
matrix:
- TOOLCHAIN: [default, zephyr-toolchain]
TESTING: testimage
mps3-an547:
extends: .build
parallel:
matrix:
- TOOLCHAIN: [default, zephyr-toolchain]
TESTING: testimage
nrf52840-mdk-usb-dongle:
extends: .build
nrf52840dk-nrf52840:
extends: .build
qemu-cortex-a53:
extends: .build
parallel:
matrix:
- TOOLCHAIN: [default, zephyr-toolchain]
TESTING: testimage
qemu-cortex-a9:
extends: .build
parallel:
matrix:
- TOOLCHAIN: [default, zephyr-toolchain]
TESTING: testimage
qemu-cortex-m0:
extends: .build
parallel:
matrix:
- TOOLCHAIN: [default, zephyr-toolchain]
TESTING: testimage
qemu-cortex-m3:
extends: .build
parallel:
matrix:
- TOOLCHAIN: [default, zephyr-toolchain]
TESTING: testimage
qemu-cortex-r5:
extends: .build
qemu-nios2:
extends: .build
qemu-x86:
extends: .build
parallel:
matrix:
- TOOLCHAIN: [default, zephyr-toolchain]
TESTING: testimage
stm32mp157c-dk2:
extends: .build
v2m-musca-b1:
extends: .build
v2m-musca-s1:
extends: .build