mirror of
https://github.com/espressif/esp-idf.git
synced 2026-09-22 13:01:16 +03:00
- Harden prefix_map.cmake for paths with spaces on Windows - ldgen: fragments-list-file, list normalization, CMake integration (tools/cmake + cmakev2) - CI exclude list for check_tools; test_spaces bundle tweak Made-with: Cursor
115 lines
3.7 KiB
YAML
115 lines
3.7 KiB
YAML
.host_test_win_template:
|
|
extends:
|
|
- .brew-windows-settings
|
|
- .rules:test:host_test
|
|
stage: host_test
|
|
dependencies: # set dependencies to null to avoid missing artifacts issue
|
|
# run host_test jobs immediately, only after upload cache
|
|
needs:
|
|
- job: upload-pip-cache
|
|
optional: true
|
|
artifacts: false
|
|
- job: upload-submodules-cache
|
|
optional: true
|
|
artifacts: false
|
|
- job: manual_gate
|
|
optional: true
|
|
|
|
test_cli_installer_win:
|
|
rules:
|
|
- when: never
|
|
extends:
|
|
- .host_test_win_template
|
|
- .rules:labels:windows_pytest_build_system
|
|
allow_failure: true
|
|
artifacts:
|
|
when: on_failure
|
|
paths:
|
|
- tools/tools.new.json
|
|
- tools/test_idf_tools/test_python_env_logs.txt
|
|
expire_in: 1 week
|
|
timeout: 3h
|
|
script:
|
|
# Tools must be downloaded for testing
|
|
# cmake@version that is supported
|
|
- python tools\idf_tools.py download required qemu-riscv32 qemu-xtensa cmake cmake@3.22.1
|
|
- cd tools\test_idf_tools
|
|
- python .\test_idf_tools.py
|
|
- python .\test_idf_tools_python_env.py
|
|
|
|
test_tools_win:
|
|
extends:
|
|
- .host_test_win_template
|
|
- .rules:labels:windows_pytest_build_system
|
|
parallel: 4
|
|
artifacts:
|
|
paths:
|
|
- "*.out"
|
|
- "XUNIT_*.xml"
|
|
reports:
|
|
junit: "XUNIT_*.xml"
|
|
expire_in: 1 week
|
|
when: always
|
|
script:
|
|
- cd tools\test_idf_py
|
|
- idf-ci gitlab download-known-failure-cases-file ${KNOWN_FAILURE_CASES_FILE_NAME}
|
|
- pytest --parallel-count ${CI_NODE_TOTAL} --parallel-index ${CI_NODE_INDEX} --junitxml=XUNIT_RESULT.xml --ignore-result-files ${KNOWN_FAILURE_CASES_FILE_NAME}
|
|
|
|
# Build tests
|
|
.test_build_system_template_win:
|
|
extends: .host_test_win_template
|
|
timeout: 4 hours
|
|
artifacts:
|
|
paths:
|
|
- XUNIT_RESULT.xml
|
|
- test_build_system
|
|
expire_in: 2 days
|
|
when: always
|
|
reports:
|
|
junit: XUNIT_RESULT.xml
|
|
script:
|
|
- cd tools\test_build_system
|
|
- idf-ci gitlab download-known-failure-cases-file ${KNOWN_FAILURE_CASES_FILE_NAME}
|
|
- pytest --parallel-count ${CI_NODE_TOTAL} --parallel-index ${CI_NODE_INDEX} --junitxml=${CI_PROJECT_DIR}\XUNIT_RESULT.xml --ignore-result-files ${KNOWN_FAILURE_CASES_FILE_NAME} --durations=10
|
|
|
|
pytest_build_system_win:
|
|
extends:
|
|
- .test_build_system_template_win
|
|
- .rules:labels:windows_pytest_build_system
|
|
parallel: 6
|
|
|
|
pytest_build_system_win_minimal_cmake:
|
|
extends:
|
|
- .test_build_system_template_win
|
|
- .rules:labels:windows_pytest_build_system
|
|
parallel: 2
|
|
variables:
|
|
MINIMAL_CMAKE_VERSION: "3.22.1"
|
|
script:
|
|
- python tools\idf_tools.py install cmake@${MINIMAL_CMAKE_VERSION}
|
|
- $Env:PATH = "$Env:USERPROFILE\.espressif\tools\cmake\${MINIMAL_CMAKE_VERSION}\bin;$Env:PATH"
|
|
- |
|
|
$actualVersion = (& cmake --version).Split()[2]
|
|
if ($actualVersion -ne $Env:MINIMAL_CMAKE_VERSION) {
|
|
Write-Error "ERROR: Wrong CMake version! Detected: $actualVersion, but expected: $Env:MINIMAL_CMAKE_VERSION"
|
|
exit 1
|
|
}
|
|
- cd tools\test_build_system
|
|
- idf-ci gitlab download-known-failure-cases-file ${KNOWN_FAILURE_CASES_FILE_NAME}
|
|
- pytest -k cmake --junitxml=${CI_PROJECT_DIR}\XUNIT_RESULT.xml --ignore-result-files ${KNOWN_FAILURE_CASES_FILE_NAME} --durations=10
|
|
|
|
pytest_buildv2_system_win:
|
|
extends:
|
|
- .test_build_system_template_win
|
|
- .rules:labels:buildv2
|
|
parallel: 6
|
|
script:
|
|
- cd tools\test_build_system
|
|
- idf-ci gitlab download-known-failure-cases-file ${KNOWN_FAILURE_CASES_FILE_NAME}
|
|
- pytest
|
|
--buildv2
|
|
--parallel-count ${CI_NODE_TOTAL}
|
|
--parallel-index ${CI_NODE_INDEX}
|
|
--junitxml=${CI_PROJECT_DIR}\XUNIT_RESULT.xml
|
|
--ignore-result-files ${KNOWN_FAILURE_CASES_FILE_NAME}
|