diff --git a/.oniro-ci/machines-and-flavours.yaml b/.oniro-ci/machines-and-flavours.yaml index 3f544b5c2f54617ece6d3913f8195e40637d379e..c1bacf9ddf84db12be156525df2d5a34efaf7373 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