diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index f49c7d49f7238b76d67039c63b4d50fc6a3141e6..67857c5af4b9dbc5b02f039a987ab7d8388b239b 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -10,19 +10,22 @@ variables: - 'true' - 'false' description: Enable debug information output to the log - META_CASSINI_BUILD_IMAGE: + META_CASSINI_TARGET_BRANCH: value: none + description: Comma separated list of meta-cassini branch to trigger + (none, main, nanbield-dev, mickledore-dev, kirkstone-dev) + META_CASSINI_BUILD_IMAGE: + value: all-images description: Comma separated list of images to build - (none, all-images, k3s) + (none, all-images, greengrass, k3s) META_CASSINI_BUILD_PLATFORM: - value: none + value: corstone1000-fvp, n1sdp description: Comma separated list of platforms to build - (none, all-platforms, corstone1000-mps3, corstone1000-fvp, - n1sdp) + (none, corstone1000-fvp, n1sdp) META_CASSINI_FORCE_TESTS: value: none description: Comma separated list of tests that must be run - (all, ptest, acs, sanity) + (all, ptest, acs, sanity, idt_greengrass) # include jobs include: @@ -39,25 +42,11 @@ trigger-meta-cassini: variables: false stage: Build rules: - - if: '$META_CASSINI_PROJECT == "" || - $META_CASSINI_PROJECT == null' - when: never - - if: '$CI_MERGE_REQUEST_IID' - variables: - META_CASSINI_TARGET_BRANCH: "${CI_MERGE_REQUEST_TARGET_BRANCH_NAME}-dev" - - if: '$PARENT_PIPELINE_SOURCE == "schedule"' - variables: - META_CASSINI_TARGET_BRANCH: "${CI_COMMIT_BRANCH}-dev" - - if: '$META_CASSINI_TARGET_BRANCH == "" || - $META_CASSINI_TARGET_BRANCH == null' - when: never - - !reference [".build-image:rules:k3s", rules] - - !reference [".build-image:rules:k3s-dev", rules] - - !reference [".build-image:rules:k3s-sdk", rules] - - !reference [".build-image:rules:n1sdp-and-corstone1000", rules] + - !reference [".build-image:rules:skip-target-build", rules] + - !reference [".build-image:rules:set-target-branch", rules] + - !reference [".build-image:rules:common", rules] - !reference [".build-image:rules:n1sdp", rules] - !reference [".build-image:rules:corstone1000", rules] - - !reference [".build-image:rules:scheduled-or-manual", rules] trigger: project: $META_CASSINI_PROJECT branch: $META_CASSINI_TARGET_BRANCH @@ -81,8 +70,8 @@ trigger-meta-cassini: Download-Results: stage: Test rules: - - if: '$META_CASSINI_PROJECT == "" || $META_CASSINI_TARGET_BRANCH == ""' - when: never + - !reference [".build-image:rules:skip-target-build", rules] + - when: always extends: .resource-request image: "${MIRROR_DOCKER}/python:slim" dependencies: diff --git a/.gitlab/ci/rules.yml b/.gitlab/ci/rules.yml index 0d1babf79097cab4240e421d04f6817dc79c54f3..54201604c0ade657f7b88374a128f0c5e5b51ea8 100644 --- a/.gitlab/ci/rules.yml +++ b/.gitlab/ci/rules.yml @@ -1,26 +1,20 @@ -# SPDX-FileCopyrightText: Copyright 2023 Arm Limited and/or its +# SPDX-FileCopyrightText: Copyright 2023-2024 Arm Limited and/or its # affiliates # # SPDX-License-Identifier: MIT --- # Conditions -.if-merge-request: &if-merge-request - if: '$CI_MERGE_REQUEST_IID' - .if-merge-request-or-push: &if-merge-request-or-push if: '$CI_MERGE_REQUEST_IID || $CI_PIPELINE_SOURCE == "push"' -.if-scheduled-or-manual: &if-scheduled-or-manual - if: '$CI_PIPELINE_SOURCE == "schedule" || $CI_PIPELINE_SOURCE == "web"' - -.if-parent-scheduled-or-manual: &if-parent-scheduled-or-manual - if: '$PARENT_PIPELINE_SOURCE == "schedule" || - $PARENT_PIPELINE_SOURCE == "web"' +.if-no-target-project: &if-no-target-project + if: '$META_CASSINI_PROJECT == "" || $META_CASSINI_PROJECT == null' # Changes patterns .build-common: &build-common - "grub/**/*" - "meta-security/**/*" + - "conf/layer.conf" .build-n1sdp: &build-n1sdp - "conf/machine/include/n1sdp-cassini-extra-settings.inc" @@ -34,16 +28,12 @@ - "meta-arm/meta-arm-bsp/recipes-kernel/**/*" - "meta-arm/meta-arm-bsp/wic/*" -.build-n1sdp-and-corstone1000: &build-n1sdp-and-corstone1000 - - "conf/layer.conf" - # Build rules .build-image:rules:n1sdp: rules: - <<: *if-merge-request-or-push changes: *build-n1sdp variables: - META_CASSINI_BUILD_IMAGE: 'k3s' META_CASSINI_BUILD_PLATFORM: 'n1sdp' .build-image:rules:corstone1000: @@ -51,51 +41,31 @@ - <<: *if-merge-request-or-push changes: *build-corstone1000 variables: - META_CASSINI_BUILD_IMAGE: 'k3s' META_CASSINI_BUILD_PLATFORM: 'corstone1000-fvp' -.build-image:rules:n1sdp-and-corstone1000: +.build-image:rules:common: rules: - <<: *if-merge-request-or-push - changes: *build-n1sdp-and-corstone1000 + changes: *build-common variables: - META_CASSINI_BUILD_IMAGE: 'k3s' META_CASSINI_BUILD_PLATFORM: 'n1sdp, corstone1000-fvp' -.build-image:rules:k3s: +.build-image:rules:set-target-branch: rules: - - <<: *if-merge-request-or-push - changes: *build-common + - if: '$CI_MERGE_REQUEST_TARGET_BRANCH_NAME == "main"' variables: - META_CASSINI_BUILD_IMAGE: 'k3s' - META_CASSINI_BUILD_PLATFORM: 'all-platforms' - -.build-image:rules:k3s-dev: - rules: - - <<: *if-merge-request-or-push - changes: *build-common + META_CASSINI_TARGET_BRANCH: 'main' + - if: '$CI_MERGE_REQUEST_TARGET_BRANCH_NAME == "nanbield"' variables: - META_CASSINI_BUILD_IMAGE: 'k3s' - META_CASSINI_BUILD_PLATFORM: 'all-platforms' - -.build-image:rules:k3s-sdk: - rules: - - <<: *if-merge-request-or-push - changes: *build-common + META_CASSINI_TARGET_BRANCH: 'nanbield-dev' + - if: '$CI_MERGE_REQUEST_TARGET_BRANCH_NAME == "mickledore"' variables: - META_CASSINI_BUILD_IMAGE: 'k3s' - META_CASSINI_BUILD_PLATFORM: 'all-platforms' - -.build-image:rules:scheduled-or-manual: - rules: - - <<: *if-scheduled-or-manual + META_CASSINI_TARGET_BRANCH: 'mickledore-dev' + - if: '$CI_MERGE_REQUEST_TARGET_BRANCH_NAME == "kirkstone"' variables: - META_CASSINI_BUILD_IMAGE: 'k3s' - META_CASSINI_BUILD_PLATFORM: 'all-platforms' + META_CASSINI_TARGET_BRANCH: 'kirkstone-dev' -.build-image:rules:merge-request-or-push: +.build-image:rules:skip-target-build: rules: - - <<: *if-merge-request-or-push - variables: - META_CASSINI_BUILD_IMAGE: 'k3s' - META_CASSINI_BUILD_PLATFORM: 'all-platforms' + - <<: *if-no-target-project + when: never diff --git a/qa-checks/cassini-bsp-dictionary b/qa-checks/cassini-bsp-dictionary index ddc56901c2ecd3aabe481535ba1969f842df8622..e38c9a22c96429dfe20378cb621966ac951dfffe 100644 --- a/qa-checks/cassini-bsp-dictionary +++ b/qa-checks/cassini-bsp-dictionary @@ -15,8 +15,8 @@ BUILDIN cassini cgroups config -CONFIG_AUTOFS_FS CONFIG_AUTOFS4_FS +CONFIG_AUTOFS_FS configfile corstone cpio @@ -36,11 +36,13 @@ gzio homepageping initscripts kernelcfg +kirkstone LIBC Linaro mandatoryvar mdev meta-cassini-bsp +mickledore modutils msdos mtrace