From 2d5651f1c89cdff8e7e1691c0040011bacb9a17b Mon Sep 17 00:00:00 2001 From: Pavel Zhukov <pavel.zhukov@huawei.com> Date: Tue, 28 Jun 2022 09:28:40 +0200 Subject: [PATCH] oniro-ci: Add clang jobs Add first clang jobs. This should be factorized and moved to workspace definition once clang is ready. In current situation defining all build jobs as matrix causes dependencies issue similar to one in [1] [1] https://gitlab.eclipse.org/eclipse/oniro-core/oniro/-/issues/574 Signed-off-by: Pavel Zhukov <pavel.zhukov@huawei.com> --- .oniro-ci/machines-and-flavours.yaml | 117 +++++++++++++++++++++++++++ 1 file changed, 117 insertions(+) diff --git a/.oniro-ci/machines-and-flavours.yaml b/.oniro-ci/machines-and-flavours.yaml index 3f544b5c..c1bacf9d 100644 --- a/.oniro-ci/machines-and-flavours.yaml +++ b/.oniro-ci/machines-and-flavours.yaml @@ -20,6 +20,12 @@ linux-qemu-x86: # tainted build intermediate files, downloads or published artifacts. CI_ONIRO_BB_LOCAL_CONF_BB_GENERATE_MIRROR_TARBALLS: 1 CI_ONIRO_JOB_ARTIFACTS: "*.wic.* *.bmap ovmf.qcow2" + parallel: + matrix: + - CI_ONIRO_BB_LOCAL_CONF_TOOLCHAIN: "clang" + CI_ONIRO_BB_LOCAL_CONF_RUNTIME: "llvm" + - CI_ONIRO_BB_LOCAL_CONF_TOOLCHAIN: "gcc" + CI_ONIRO_BB_LOCAL_CONF_RUNTIME: "gnu" linux-qemu-x86_64: extends: .build-wic-image @@ -31,14 +37,32 @@ linux-qemu-x86_64: CI_ONIRO_BUILD_CACHE: "pub" CI_ONIRO_BB_LOCAL_CONF_BB_GENERATE_MIRROR_TARBALLS: 1 CI_ONIRO_JOB_ARTIFACTS: "*.wic.* *.bmap ovmf.qcow2" + parallel: + matrix: + - CI_ONIRO_BB_LOCAL_CONF_TOOLCHAIN: "clang" + CI_ONIRO_BB_LOCAL_CONF_RUNTIME: "llvm" + - CI_ONIRO_BB_LOCAL_CONF_TOOLCHAIN: "gcc" + CI_ONIRO_BB_LOCAL_CONF_RUNTIME: "gnu" linux-seco-intel-b68: extends: .build-wic-image variables: + MACHINE: seco-intel-b68 CI_ONIRO_BUILD_FLAVOUR: linux CI_ONIRO_RECIPE_NAME: oniro-image-base-tests + +linux-seco-intel-b68: + extends: .build-wic-image + variables: MACHINE: seco-intel-b68 + CI_ONIRO_BUILD_FLAVOUR: linux + CI_ONIRO_RECIPE_NAME: oniro-image-base-tests + CI_ONIRO_BB_LOCAL_CONF_TOOLCHAIN: "clang" + CI_ONIRO_BB_LOCAL_CONF_RUNTIME: "llvm" + when: manual + allow_failure: true + linux-seco-intel-b68-extra: extends: .build-linux variables: @@ -64,6 +88,17 @@ linux-seco-imx8mm-c61-4gb: # See build-generic.yaml for explanation of CI_ONIRO_BB_LOCAL_CONF_ variables. CI_ONIRO_BB_LOCAL_CONF_ACCEPT_FSL_EULA: 1 CI_ONIRO_JOB_ARTIFACTS: "*.wic.* *.bmap flash.bin-seco-imx8mm-c61*" + parallel: + matrix: + - CI_ONIRO_BB_LOCAL_CONF_TOOLCHAIN: "clang" + CI_ONIRO_BB_LOCAL_CONF_RUNTIME: "llvm" + - CI_ONIRO_BB_LOCAL_CONF_TOOLCHAIN: "gcc" + CI_ONIRO_BB_LOCAL_CONF_RUNTIME: "gnu" + rules: + - if: '$CI_ONIRO_BB_LOCAL_CONF_TOOLCHAIN == "clang"' + allow_failure: true + when: manual + - when: on_success linux-seco-imx8mm-c61-4gb-extra: extends: .build-linux @@ -82,6 +117,20 @@ linux-raspberrypi4-64: CI_ONIRO_BUILD_FLAVOUR: linux CI_ONIRO_RECIPE_NAME: oniro-image-base-tests +## We don't use matrix job here because clang build has to be fixed +## setting rules in matrix job causes broken dependencies +## see: https://gitlab.eclipse.org/eclipse/oniro-core/oniro/-/issues/574 +linux-raspberrypi4-64-clang: + extends: .build-wic-image + variables: + MACHINE: raspberrypi4-64 + CI_ONIRO_BUILD_FLAVOUR: linux + CI_ONIRO_RECIPE_NAME: oniro-image-base-tests + CI_ONIRO_BB_LOCAL_CONF_TOOLCHAIN: "clang" + CI_ONIRO_BB_LOCAL_CONF_RUNTIME: "llvm" + when: manual + allow_failure: true + zephyr-qemu-x86: extends: .build-zephyr-image variables: @@ -92,6 +141,17 @@ zephyr-qemu-x86: CI_ONIRO_RECIPE_NAME: zephyr-philosophers CI_ONIRO_BUILD_FLAVOUR: zephyr CI_ONIRO_INSTANCE_SIZE: s3.large.2 + parallel: + matrix: + - CI_ONIRO_BB_LOCAL_CONF_TOOLCHAIN: "clang" + CI_ONIRO_BB_LOCAL_CONF_RUNTIME: "llvm" + - CI_ONIRO_BB_LOCAL_CONF_TOOLCHAIN: "gcc" + CI_ONIRO_BB_LOCAL_CONF_RUNTIME: "gnu" + rules: + - if: '$CI_ONIRO_BB_LOCAL_CONF_TOOLCHAIN == "clang"' + allow_failure: true + when: manual + - when: on_success zephyr-qemu-cortex-m3: extends: .build-zephyr-image @@ -103,6 +163,17 @@ zephyr-qemu-cortex-m3: CI_ONIRO_RECIPE_NAME: zephyr-philosophers CI_ONIRO_BUILD_FLAVOUR: zephyr CI_ONIRO_INSTANCE_SIZE: s3.large.2 + parallel: + matrix: + - CI_ONIRO_BB_LOCAL_CONF_TOOLCHAIN: "clang" + CI_ONIRO_BB_LOCAL_CONF_RUNTIME: "llvm" + - CI_ONIRO_BB_LOCAL_CONF_TOOLCHAIN: "gcc" + CI_ONIRO_BB_LOCAL_CONF_RUNTIME: "gnu" + rules: + - if: '$CI_ONIRO_BB_LOCAL_CONF_TOOLCHAIN == "clang"' + allow_failure: true + when: manual + - when: on_success zephyr-96b-nitrogen: extends: .build-zephyr-image @@ -111,6 +182,17 @@ zephyr-96b-nitrogen: CI_ONIRO_RECIPE_NAME: zephyr-philosophers CI_ONIRO_BUILD_FLAVOUR: zephyr CI_ONIRO_INSTANCE_SIZE: s3.large.2 + parallel: + matrix: + - CI_ONIRO_BB_LOCAL_CONF_TOOLCHAIN: "clang" + CI_ONIRO_BB_LOCAL_CONF_RUNTIME: "llvm" + - CI_ONIRO_BB_LOCAL_CONF_TOOLCHAIN: "gcc" + CI_ONIRO_BB_LOCAL_CONF_RUNTIME: "gnu" + rules: + - if: '$CI_ONIRO_BB_LOCAL_CONF_TOOLCHAIN == "clang"' + allow_failure: true + when: manual + - when: on_success zephyr-96b-nitrogen-tests: extends: .build-zephyr-image @@ -138,11 +220,35 @@ zephyr-nrf52840dk-nrf52840: extends: .build-zephyr variables: MACHINE: nrf52840dk-nrf52840 + parallel: + matrix: + - CI_ONIRO_BB_LOCAL_CONF_TOOLCHAIN: "clang" + CI_ONIRO_BB_LOCAL_CONF_RUNTIME: "llvm" + - CI_ONIRO_BB_LOCAL_CONF_TOOLCHAIN: "gcc" + CI_ONIRO_BB_LOCAL_CONF_RUNTIME: "gnu" + rules: + - if: '$CI_ONIRO_BB_LOCAL_CONF_TOOLCHAIN == "clang"' + allow_failure: true + when: manual + - when: on_success + zephyr-arduino-nano-33-ble: extends: .build-zephyr variables: MACHINE: arduino-nano-33-ble + parallel: + matrix: + - CI_ONIRO_BB_LOCAL_CONF_TOOLCHAIN: "clang" + CI_ONIRO_BB_LOCAL_CONF_RUNTIME: "llvm" + - CI_ONIRO_BB_LOCAL_CONF_TOOLCHAIN: "gcc" + CI_ONIRO_BB_LOCAL_CONF_RUNTIME: "gnu" + rules: + - if: '$CI_ONIRO_BB_LOCAL_CONF_TOOLCHAIN == "clang"' + allow_failure: true + when: manual + - when: on_success + freertos-armv5: extends: .build-freertos @@ -151,3 +257,14 @@ freertos-armv5: # See the note on linux-qemu-x86. CI_ONIRO_BUILD_CACHE: "pub" CI_ONIRO_BB_LOCAL_CONF_BB_GENERATE_MIRROR_TARBALLS: 1 + parallel: + matrix: + - CI_ONIRO_BB_LOCAL_CONF_TOOLCHAIN: "clang" + CI_ONIRO_BB_LOCAL_CONF_RUNTIME: "llvm" + - CI_ONIRO_BB_LOCAL_CONF_TOOLCHAIN: "gcc" + CI_ONIRO_BB_LOCAL_CONF_RUNTIME: "gnu" + rules: + - if: '$CI_ONIRO_BB_LOCAL_CONF_TOOLCHAIN == "clang"' + allow_failure: true + when: manual + - when: on_success -- GitLab