diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 5ddc410b17..1ffce6e9b4 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -210,6 +210,16 @@ before_script: before_script: - *common-before_scripts +.before_script_macos: + before_script: + - *common-before_scripts + # On macOS, these tools need to be installed + - export IDF_TOOLS_PATH="${HOME}/.espressif_runner_${CI_RUNNER_ID}_${CI_CONCURRENT_ID}" + - $IDF_PATH/tools/idf_tools.py --non-interactive install cmake ninja + # This adds tools (compilers) and the version-specific Python environment to PATH + - *setup_tools_and_idf_python_venv + - fetch_submodules + .before_script_build_jobs: before_script: - *common-before_scripts diff --git a/.gitlab/ci/build.yml b/.gitlab/ci/build.yml index 2d139e7f04..7bf31e0893 100644 --- a/.gitlab/ci/build.yml +++ b/.gitlab/ci/build.yml @@ -751,10 +751,9 @@ build_clang_test_apps_esp32c6: optional: true script: - ${IDF_PATH}/tools/ci/test_configure_ci_environment.sh - - rm -rf test_build_system - - mkdir test_build_system - - cd test_build_system - - ${IDF_PATH}/tools/ci/${SHELL_TEST_SCRIPT} + - cd ${IDF_PATH}/tools/test_build_system + - pytest --parallel-count ${CI_NODE_TOTAL:-1} --parallel-index ${CI_NODE_INDEX:-1} + --work-dir ${CI_PROJECT_DIR}/test_build_system --junitxml=${CI_PROJECT_DIR}/XUNIT_RESULT.xml pytest_build_system: extends: .test_build_system_template @@ -767,11 +766,23 @@ pytest_build_system: expire_in: 2 days reports: junit: XUNIT_RESULT.xml - script: - - ${IDF_PATH}/tools/ci/test_configure_ci_environment.sh - - cd ${IDF_PATH}/tools/test_build_system - - pytest --parallel-count ${CI_NODE_TOTAL:-1} --parallel-index ${CI_NODE_INDEX:-1} - --work-dir ${CI_PROJECT_DIR}/test_build_system --junitxml=${CI_PROJECT_DIR}/XUNIT_RESULT.xml + +pytest_build_system_macos: + extends: + - .test_build_system_template + - .before_script_macos + - .rules:build:macos + tags: + - macos_shell + parallel: 3 + artifacts: + paths: + - XUNIT_RESULT.xml + - test_build_system + when: always + expire_in: 2 days + reports: + junit: XUNIT_RESULT.xml build_docker: extends: diff --git a/.gitlab/ci/rules.yml b/.gitlab/ci/rules.yml index 12fcb45b85..c1820eab27 100644 --- a/.gitlab/ci/rules.yml +++ b/.gitlab/ci/rules.yml @@ -1567,6 +1567,21 @@ - <<: *if-dev-push changes: *patterns-target_test-wifi +.rules:build:macos: + rules: + - <<: *if-revert-branch + when: never + - <<: *if-protected + - <<: *if-label-build + - <<: *if-label-macos + - <<: *if-label-macos_test + - <<: *if-dev-push + changes: *patterns-build_macos + - <<: *if-dev-push + changes: *patterns-build_system + - <<: *if-dev-push + changes: *patterns-downloadable-tools + .rules:build:target_test: rules: - <<: *if-revert-branch