mirror of
https://github.com/espressif/esp-idf.git
synced 2024-10-05 20:47:46 -04:00
1520 lines
41 KiB
YAML
1520 lines
41 KiB
YAML
.target_test_template:
|
|
image: $TARGET_TEST_ENV_IMAGE
|
|
extends:
|
|
- .before_script:fetch:target_test
|
|
stage: target_test
|
|
timeout: 1 hour
|
|
dependencies: []
|
|
cache:
|
|
# Usually do not need submodule-cache in target_test
|
|
- key: pip-cache
|
|
paths:
|
|
- .cache/pip
|
|
policy: pull
|
|
after_script:
|
|
- python tools/ci/artifacts_handler.py upload --type logs junit_reports
|
|
|
|
.pytest_template:
|
|
extends:
|
|
- .target_test_template
|
|
artifacts:
|
|
when: always
|
|
paths:
|
|
- XUNIT_RESULT.xml
|
|
- pytest_embedded_log/
|
|
reports:
|
|
junit: XUNIT_RESULT.xml
|
|
expire_in: 1 week
|
|
script:
|
|
- retry_failed git clone $KNOWN_FAILURE_CASES_REPO known_failure_cases
|
|
# get runner env config file
|
|
- retry_failed git clone $TEST_ENV_CONFIG_REPO
|
|
- python $CHECKOUT_REF_SCRIPT ci-test-runner-configs ci-test-runner-configs
|
|
# using runner tags as markers to filter the test cases
|
|
# Runner tags are comma separated, replace the comma with " and " for markers
|
|
- job_tags=$(python tools/ci/python_packages/gitlab_api.py get_job_tags $CI_PROJECT_ID --job_id $CI_JOB_ID)
|
|
- markers=$(echo $job_tags | sed -e "s/,/ and /g")
|
|
- if [ -n "$BUILD_JOB_NAME" ]; then
|
|
job_name=$BUILD_JOB_NAME;
|
|
else
|
|
job_name=${BUILD_JOB_PREFIX}$(python tools/ci/ci_get_mr_info.py target_in_tags $job_tags);
|
|
fi
|
|
- run_cmd python tools/ci/artifacts_handler.py download --job-name "$job_name" --type build_dir_without_map_and_elf_files
|
|
- if [ -n "$REQUIRES_ELF_FILES" ]; then
|
|
run_cmd python tools/ci/artifacts_handler.py download --job-name "$job_name" --type map_and_elf_files;
|
|
fi
|
|
- run_cmd pytest $TEST_DIR
|
|
-m \"${markers}\"
|
|
--junitxml=XUNIT_RESULT.xml
|
|
--ignore-result-files known_failure_cases/known_failure_cases.txt
|
|
--parallel-count ${CI_NODE_TOTAL:-1}
|
|
--parallel-index ${CI_NODE_INDEX:-1}
|
|
${PYTEST_EXTRA_FLAGS}
|
|
--app-info-filepattern \"list_job_*.txt\"
|
|
|
|
.pytest_examples_dir_template:
|
|
extends: .pytest_template
|
|
variables:
|
|
TEST_DIR: examples
|
|
BUILD_JOB_PREFIX: build_pytest_examples_
|
|
|
|
.pytest_examples_dir_jtag_template:
|
|
extends: .pytest_examples_dir_template
|
|
needs:
|
|
- job: build_pytest_examples_jtag
|
|
artifacts: false
|
|
variables:
|
|
BUILD_JOB_NAME: build_pytest_examples_jtag
|
|
REQUIRES_ELF_FILES: "1"
|
|
PYTEST_EXTRA_FLAGS: "--log-cli-level DEBUG"
|
|
|
|
pytest_examples_esp32_generic:
|
|
extends:
|
|
- .pytest_examples_dir_template
|
|
- .rules:test:example_test-esp32
|
|
needs:
|
|
- job: build_pytest_examples_esp32
|
|
artifacts: false
|
|
tags: [ esp32, generic ]
|
|
parallel: 3
|
|
|
|
pytest_examples_esp32_esp32eco3:
|
|
extends:
|
|
- .pytest_examples_dir_template
|
|
- .rules:test:example_test-esp32
|
|
needs:
|
|
- job: build_pytest_examples_esp32
|
|
artifacts: false
|
|
tags: [ esp32, esp32eco3 ]
|
|
|
|
pytest_examples_esp32_ir_transceiver:
|
|
extends:
|
|
- .pytest_examples_dir_template
|
|
- .rules:test:example_test-esp32
|
|
needs:
|
|
- job: build_pytest_examples_esp32
|
|
artifacts: false
|
|
tags: [ esp32, ir_transceiver ]
|
|
|
|
pytest_examples_esp32_twai_transceiver:
|
|
extends:
|
|
- .pytest_examples_dir_template
|
|
- .rules:test:example_test-esp32
|
|
needs:
|
|
- job: build_pytest_examples_esp32
|
|
artifacts: false
|
|
tags: [ esp32, twai_transceiver ]
|
|
|
|
pytest_examples_esp32_twai_network:
|
|
extends:
|
|
- .pytest_examples_dir_template
|
|
- .rules:test:example_test-esp32
|
|
needs:
|
|
- job: build_pytest_examples_esp32
|
|
artifacts: false
|
|
tags: [ esp32, twai_network ]
|
|
|
|
pytest_examples_esp32_jtag:
|
|
extends:
|
|
- .pytest_examples_dir_jtag_template
|
|
- .rules:test:example_test-esp32
|
|
tags: [ esp32, jtag ]
|
|
|
|
pytest_examples_esp32_ccs811:
|
|
extends:
|
|
- .pytest_examples_dir_template
|
|
- .rules:test:example_test-esp32
|
|
needs:
|
|
- job: build_pytest_examples_esp32
|
|
artifacts: false
|
|
tags: [ esp32, ccs811 ]
|
|
|
|
pytest_examples_esp32_sdio:
|
|
extends:
|
|
- .pytest_examples_dir_template
|
|
- .rules:test:example_test-esp32-sdio
|
|
needs:
|
|
- job: build_pytest_examples_esp32
|
|
artifacts: false
|
|
tags: [ esp32, sdio_master_slave ]
|
|
|
|
pytest_examples_esp32s2_generic:
|
|
extends:
|
|
- .pytest_examples_dir_template
|
|
- .rules:test:example_test-esp32s2
|
|
needs:
|
|
- job: build_pytest_examples_esp32s2
|
|
artifacts: false
|
|
tags: [ esp32s2, generic ]
|
|
parallel: 3
|
|
|
|
pytest_examples_esp32s2_jtag:
|
|
extends:
|
|
- .pytest_examples_dir_jtag_template
|
|
- .rules:test:example_test-esp32s2
|
|
tags: [ esp32s2, jtag ]
|
|
|
|
pytest_examples_esp32s3_generic:
|
|
extends:
|
|
- .pytest_examples_dir_template
|
|
- .rules:test:example_test-esp32s3
|
|
needs:
|
|
- job: build_pytest_examples_esp32s3
|
|
artifacts: false
|
|
tags: [ esp32s3, generic ]
|
|
parallel: 3
|
|
|
|
pytest_examples_esp32s3_usb_serial_jtag:
|
|
extends:
|
|
- .pytest_examples_dir_jtag_template
|
|
- .rules:test:example_test-esp32s3
|
|
tags: [ esp32s3, usb_serial_jtag ]
|
|
|
|
pytest_examples_esp32s3_f4r8:
|
|
extends:
|
|
- .pytest_examples_dir_template
|
|
- .rules:test:example_test-esp32s3
|
|
needs:
|
|
- job: build_pytest_examples_esp32s3
|
|
artifacts: false
|
|
tags: [ esp32s3, MSPI_F4R8 ]
|
|
|
|
pytest_examples_esp32c2_generic:
|
|
extends:
|
|
- .pytest_examples_dir_template
|
|
- .rules:test:example_test-esp32c2
|
|
needs:
|
|
- job: build_pytest_examples_esp32c2
|
|
artifacts: false
|
|
tags: [ esp32c2, generic, xtal_40mhz ]
|
|
parallel: 3
|
|
|
|
pytest_examples_esp32c2_jtag:
|
|
extends:
|
|
- .pytest_examples_dir_jtag_template
|
|
- .rules:test:example_test-esp32c2
|
|
tags: [ esp32c2, jtag ]
|
|
|
|
pytest_examples_esp32c3_generic:
|
|
extends:
|
|
- .pytest_examples_dir_template
|
|
- .rules:test:example_test-esp32c3
|
|
needs:
|
|
- job: build_pytest_examples_esp32c3
|
|
artifacts: false
|
|
tags: [ esp32c3, generic ]
|
|
parallel: 3
|
|
|
|
pytest_examples_esp32c3_usb_serial_jtag:
|
|
extends:
|
|
- .pytest_examples_dir_jtag_template
|
|
- .rules:test:example_test-esp32c3
|
|
tags: [ esp32c3, usb_serial_jtag ]
|
|
|
|
pytest_examples_esp32c3_flash_suspend:
|
|
extends:
|
|
- .pytest_examples_dir_template
|
|
- .rules:test:example_test-esp32c3
|
|
needs:
|
|
- job: build_pytest_examples_esp32c3
|
|
artifacts: false
|
|
tags: [ esp32c3, flash_suspend ]
|
|
|
|
pytest_examples_esp32c6_generic:
|
|
extends:
|
|
- .pytest_examples_dir_template
|
|
- .rules:test:example_test-esp32c6
|
|
needs:
|
|
- job: build_pytest_examples_esp32c6
|
|
artifacts: false
|
|
tags: [ esp32c6, generic ]
|
|
|
|
pytest_examples_esp32h2_generic:
|
|
extends:
|
|
- .pytest_examples_dir_template
|
|
- .rules:test:example_test-esp32h2
|
|
needs:
|
|
- job: build_pytest_examples_esp32h2
|
|
artifacts: false
|
|
tags: [ esp32h2, generic ]
|
|
|
|
pytest_examples_esp32_ethernet_ota:
|
|
extends:
|
|
- .pytest_examples_dir_template
|
|
- .rules:test:example_test-esp32-ethernet
|
|
needs:
|
|
- job: build_pytest_examples_esp32
|
|
artifacts: false
|
|
tags: [ esp32, ethernet_ota ]
|
|
|
|
pytest_examples_esp32_wifi_high_traffic:
|
|
extends:
|
|
- .pytest_examples_dir_template
|
|
- .rules:test:example_test-esp32-wifi
|
|
needs:
|
|
- job: build_pytest_examples_esp32
|
|
artifacts: false
|
|
tags: [ esp32, wifi_high_traffic ]
|
|
|
|
pytest_examples_esp32_flash_encryption_wifi_high_traffic:
|
|
extends:
|
|
- .pytest_examples_dir_template
|
|
- .rules:test:example_test-esp32-include_nightly_run-rule
|
|
needs:
|
|
- job: build_pytest_examples_esp32
|
|
artifacts: false
|
|
tags: [ esp32, flash_encryption_wifi_high_traffic ]
|
|
|
|
pytest_examples_esp32c3_flash_encryption_wifi_high_traffic:
|
|
extends:
|
|
- .pytest_examples_dir_template
|
|
- .rules:test:example_test-esp32c3-include_nightly_run-rule
|
|
needs:
|
|
- job: build_pytest_examples_esp32c3
|
|
artifacts: false
|
|
tags: [ esp32c3, flash_encryption_wifi_high_traffic ]
|
|
|
|
pytest_examples_esp32_ethernet:
|
|
extends:
|
|
- .pytest_examples_dir_template
|
|
- .rules:test:example_test-esp32-ethernet
|
|
needs:
|
|
- job: build_pytest_examples_esp32
|
|
artifacts: false
|
|
tags: [ esp32, ethernet]
|
|
|
|
pytest_examples_esp32_ethernet_httpbin:
|
|
extends:
|
|
- .pytest_examples_dir_template
|
|
- .rules:test:example_test-esp32-ethernet
|
|
needs:
|
|
- job: build_pytest_examples_esp32
|
|
artifacts: false
|
|
tags: [ esp32, httpbin]
|
|
|
|
pytest_examples_esp32_8mb_flash:
|
|
extends:
|
|
- .pytest_examples_dir_template
|
|
- .rules:test:example_test-esp32
|
|
needs:
|
|
- job: build_pytest_examples_esp32
|
|
artifacts: false
|
|
tags: [ esp32, ethernet_flash_8m ]
|
|
|
|
pytest_examples_esp32_wifi_ap:
|
|
extends:
|
|
- .pytest_examples_dir_template
|
|
- .rules:test:example_test-esp32-wifi
|
|
needs:
|
|
- job: build_pytest_examples_esp32
|
|
artifacts: false
|
|
tags: [ esp32, wifi_ap ]
|
|
|
|
pytest_examples_esp32c3_wifi_ap:
|
|
extends:
|
|
- .pytest_examples_dir_template
|
|
- .rules:test:example_test-esp32c3-wifi
|
|
needs:
|
|
- job: build_pytest_examples_esp32c3
|
|
artifacts: false
|
|
tags: [ esp32c3, wifi_ap ]
|
|
|
|
pytest_examples_esp32s3_wifi_ap:
|
|
extends:
|
|
- .pytest_examples_dir_template
|
|
- .rules:test:example_test-esp32s3-wifi
|
|
needs:
|
|
- job: build_pytest_examples_esp32s3
|
|
artifacts: false
|
|
tags: [ esp32s3, wifi_ap ]
|
|
|
|
pytest_examples_esp32s2_wifi_ap:
|
|
extends:
|
|
- .pytest_examples_dir_template
|
|
- .rules:test:example_test-esp32s2-wifi
|
|
needs:
|
|
- job: build_pytest_examples_esp32s2
|
|
artifacts: false
|
|
tags: [ esp32s2, wifi_ap ]
|
|
|
|
pytest_examples_esp32c2_wifi_ap:
|
|
extends:
|
|
- .pytest_examples_dir_template
|
|
- .rules:test:example_test-esp32c2-wifi
|
|
needs:
|
|
- job: build_pytest_examples_esp32c2
|
|
artifacts: false
|
|
tags: [ esp32c2, wifi_ap, xtal_40mhz ]
|
|
|
|
pytest_examples_esp32c2_26m_wifi_ap:
|
|
extends:
|
|
- .pytest_examples_dir_template
|
|
- .rules:test:example_test-esp32c2-wifi
|
|
needs:
|
|
- job: build_pytest_examples_esp32c2
|
|
artifacts: false
|
|
tags: [ esp32c2, wifi_ap, xtal_26mhz ]
|
|
|
|
pytest_examples_esp32c6_wifi_ap:
|
|
extends:
|
|
- .pytest_examples_dir_template
|
|
- .rules:test:example_test-esp32c6-wifi
|
|
needs:
|
|
- job: build_pytest_examples_esp32c6
|
|
artifacts: false
|
|
tags: [ esp32c6, wifi_ap ]
|
|
|
|
pytest_examples_esp32_wifi_router:
|
|
extends:
|
|
- .pytest_examples_dir_template
|
|
- .rules:test:example_test-esp32-wifi
|
|
needs:
|
|
- job: build_pytest_examples_esp32
|
|
artifacts: false
|
|
tags: [ esp32, wifi_router ]
|
|
|
|
pytest_examples_esp32c3_wifi_router:
|
|
extends:
|
|
- .pytest_examples_dir_template
|
|
- .rules:test:example_test-esp32c3-wifi
|
|
needs:
|
|
- job: build_pytest_examples_esp32c3
|
|
artifacts: false
|
|
tags: [ esp32c3, wifi_router ]
|
|
|
|
pytest_examples_esp32s3_wifi_router:
|
|
extends:
|
|
- .pytest_examples_dir_template
|
|
- .rules:test:example_test-esp32s3-wifi
|
|
needs:
|
|
- job: build_pytest_examples_esp32s3
|
|
artifacts: false
|
|
tags: [ esp32s3, wifi_router ]
|
|
|
|
pytest_examples_esp32s2_wifi_router:
|
|
extends:
|
|
- .pytest_examples_dir_template
|
|
- .rules:test:example_test-esp32s2-wifi
|
|
needs:
|
|
- job: build_pytest_examples_esp32s2
|
|
artifacts: false
|
|
tags: [ esp32s2, wifi_router ]
|
|
|
|
pytest_examples_esp32c2_wifi_router:
|
|
extends:
|
|
- .pytest_examples_dir_template
|
|
- .rules:test:example_test-esp32c2-wifi
|
|
needs:
|
|
- job: build_pytest_examples_esp32c2
|
|
artifacts: false
|
|
tags: [ esp32c2, wifi_router, xtal_40mhz ]
|
|
|
|
pytest_examples_esp32c2_26m_wifi_router:
|
|
extends:
|
|
- .pytest_examples_dir_template
|
|
- .rules:test:example_test-esp32c2-wifi
|
|
needs:
|
|
- job: build_pytest_examples_esp32c2
|
|
artifacts: false
|
|
tags: [ esp32c2, wifi_router, xtal_26mhz ]
|
|
|
|
pytest_examples_esp32c6_wifi_router:
|
|
extends:
|
|
- .pytest_examples_dir_template
|
|
- .rules:test:example_test-esp32c6-wifi
|
|
needs:
|
|
- job: build_pytest_examples_esp32c6
|
|
artifacts: false
|
|
tags: [ esp32c6, wifi_router ]
|
|
|
|
pytest_examples_esp32_wifi_iperf:
|
|
extends:
|
|
- .pytest_examples_dir_template
|
|
- .rules:test:example_test-esp32-wifi
|
|
needs:
|
|
- job: build_pytest_examples_esp32
|
|
artifacts: false
|
|
tags: [ esp32, Example_ShieldBox_Basic ]
|
|
|
|
pytest_examples_esp32_wifi_wlan:
|
|
extends:
|
|
- .pytest_examples_dir_template
|
|
- .rules:test:example_test-esp32-wifi
|
|
needs:
|
|
- job: build_pytest_examples_esp32
|
|
artifacts: false
|
|
tags: [ esp32, wifi_wlan ]
|
|
|
|
pytest_examples_esp32_ethernet_router:
|
|
extends:
|
|
- .pytest_examples_dir_template
|
|
- .rules:test:example_test-esp32-ethernet
|
|
needs:
|
|
- job: build_pytest_examples_esp32
|
|
artifacts: false
|
|
tags: [ esp32, ethernet_router ]
|
|
|
|
pytest_examples_esp32_ethernet_vlan:
|
|
extends:
|
|
- .pytest_examples_dir_template
|
|
- .rules:test:example_test-esp32-ethernet
|
|
needs:
|
|
- job: build_pytest_examples_esp32
|
|
artifacts: false
|
|
tags: [ esp32, ethernet_vlan ]
|
|
|
|
pytest_examples_esp32_ethernet_bridge:
|
|
extends:
|
|
- .pytest_examples_dir_template
|
|
- .rules:test:example_test-esp32
|
|
needs:
|
|
- job: build_pytest_examples_esp32
|
|
artifacts: false
|
|
tags: [ esp32, eth_w5500 ]
|
|
variables:
|
|
PYTEST_EXTRA_FLAGS: "--dev-passwd ${ETHERNET_TEST_PASSWORD} --dev-user ${ETHERNET_TEST_USER}"
|
|
|
|
pytest_examples_esp32_flash_encryption:
|
|
extends:
|
|
- .pytest_examples_dir_template
|
|
- .rules:test:example_test-esp32
|
|
needs:
|
|
- job: build_pytest_examples_esp32
|
|
artifacts: false
|
|
tags: [ esp32, flash_encryption ]
|
|
|
|
pytest_examples_esp32_wifi_two_dut:
|
|
extends:
|
|
- .pytest_examples_dir_template
|
|
- .rules:test:example_test-esp32-wifi
|
|
needs:
|
|
- job: build_pytest_examples_esp32
|
|
artifacts: false
|
|
tags: [ esp32, wifi_two_dut ]
|
|
|
|
pytest_examples_esp32c3_wifi_two_dut:
|
|
extends:
|
|
- .pytest_examples_dir_template
|
|
- .rules:test:example_test-esp32c3-wifi
|
|
needs:
|
|
- job: build_pytest_examples_esp32c3
|
|
artifacts: false
|
|
tags: [ esp32c3, wifi_two_dut ]
|
|
|
|
pytest_examples_esp32s3_wifi_two_dut:
|
|
extends:
|
|
- .pytest_examples_dir_template
|
|
- .rules:test:example_test-esp32s3-wifi
|
|
needs:
|
|
- job: build_pytest_examples_esp32s3
|
|
artifacts: false
|
|
tags: [ esp32s3, wifi_two_dut ]
|
|
|
|
pytest_examples_esp32c2_wifi_two_dut:
|
|
extends:
|
|
- .pytest_examples_dir_template
|
|
- .rules:test:example_test-esp32c2-wifi
|
|
needs:
|
|
- job: build_pytest_examples_esp32c2
|
|
artifacts: false
|
|
tags: [ esp32c2, wifi_two_dut, xtal_26mhz ]
|
|
|
|
pytest_examples_esp32c3_flash_encryption:
|
|
extends:
|
|
- .pytest_examples_dir_template
|
|
- .rules:test:example_test-esp32c3
|
|
needs:
|
|
- job: build_pytest_examples_esp32c3
|
|
artifacts: false
|
|
tags: [ esp32c3, flash_encryption ]
|
|
|
|
pytest_examples_esp32c3_nvs_encr_hmac:
|
|
extends:
|
|
- .pytest_examples_dir_template
|
|
- .rules:test:example_test-esp32c3-nvs_encr_hmac
|
|
needs:
|
|
- job: build_pytest_examples_esp32c3
|
|
artifacts: false
|
|
tags: [ esp32c3, nvs_encr_hmac ]
|
|
|
|
pytest_examples_esp32s2_usb_device:
|
|
extends:
|
|
- .pytest_examples_dir_template
|
|
- .rules:test:example_test-esp32s2-usb
|
|
needs:
|
|
- job: build_pytest_examples_esp32s2
|
|
artifacts: false
|
|
tags: [ esp32s2, usb_device ]
|
|
|
|
pytest_examples_esp32_sdmmc:
|
|
extends:
|
|
- .pytest_examples_dir_template
|
|
- .rules:test:example_test-esp32
|
|
needs:
|
|
- job: build_pytest_examples_esp32
|
|
artifacts: false
|
|
tags: [ esp32, sdcard_sdmode ]
|
|
|
|
pytest_examples_esp32_sdspi:
|
|
extends:
|
|
- .pytest_examples_dir_template
|
|
- .rules:test:example_test-esp32-sdio
|
|
needs:
|
|
- job: build_pytest_examples_esp32
|
|
artifacts: false
|
|
tags: [ esp32, sdcard_spimode ]
|
|
|
|
pytest_examples_esp32s2_sdspi:
|
|
extends:
|
|
- .pytest_examples_dir_template
|
|
- .rules:test:example_test-esp32s2-sdio
|
|
needs:
|
|
- job: build_pytest_examples_esp32s2
|
|
artifacts: false
|
|
tags: [ esp32s2, sdcard_spimode ]
|
|
|
|
pytest_examples_esp32c3_sdspi:
|
|
extends:
|
|
- .pytest_examples_dir_template
|
|
- .rules:test:example_test-esp32c3-sdio
|
|
needs:
|
|
- job: build_pytest_examples_esp32c3
|
|
artifacts: false
|
|
tags: [ esp32c3, sdcard_spimode ]
|
|
|
|
pytest_examples_esp32_extflash:
|
|
extends:
|
|
- .pytest_examples_dir_template
|
|
- .rules:test:example_test-esp32
|
|
needs:
|
|
- job: build_pytest_examples_esp32
|
|
artifacts: false
|
|
tags: [ esp32, external_flash ]
|
|
|
|
pytest_examples_esp32_adc:
|
|
extends:
|
|
- .pytest_examples_dir_template
|
|
- .rules:test:example_test-esp32-adc
|
|
needs:
|
|
- job: build_pytest_examples_esp32
|
|
artifacts: false
|
|
tags: [ esp32, adc ]
|
|
|
|
pytest_examples_esp32s2_adc:
|
|
extends:
|
|
- .pytest_examples_dir_template
|
|
- .rules:test:example_test-esp32s2-adc
|
|
needs:
|
|
- job: build_pytest_examples_esp32s2
|
|
artifacts: false
|
|
tags: [ esp32s2, adc ]
|
|
|
|
pytest_examples_esp32s3_adc:
|
|
extends:
|
|
- .pytest_examples_dir_template
|
|
- .rules:test:example_test-esp32s3-adc
|
|
needs:
|
|
- job: build_pytest_examples_esp32s3
|
|
artifacts: false
|
|
tags: [ esp32s3, adc ]
|
|
|
|
pytest_examples_esp32c3_adc:
|
|
extends:
|
|
- .pytest_examples_dir_template
|
|
- .rules:test:example_test-esp32c3-adc
|
|
needs:
|
|
- job: build_pytest_examples_esp32c3
|
|
artifacts: false
|
|
tags: [ esp32c3, adc ]
|
|
|
|
pytest_examples_esp32c2_adc:
|
|
extends:
|
|
- .pytest_examples_dir_template
|
|
- .rules:test:example_test-esp32c2-adc
|
|
needs:
|
|
- job: build_pytest_examples_esp32c2
|
|
artifacts: false
|
|
tags: [ esp32c2, adc, xtal_26mhz]
|
|
|
|
pytest_examples_esp32c6_adc:
|
|
extends:
|
|
- .pytest_examples_dir_template
|
|
- .rules:test:example_test-esp32c6-adc
|
|
needs:
|
|
- job: build_pytest_examples_esp32c6
|
|
artifacts: false
|
|
tags: [ esp32c6, adc ]
|
|
|
|
pytest_examples_esp32h2_adc:
|
|
extends:
|
|
- .pytest_examples_dir_template
|
|
- .rules:test:example_test-esp32h2-adc
|
|
needs:
|
|
- job: build_pytest_examples_esp32h2
|
|
artifacts: false
|
|
tags: [ esp32h2, adc ]
|
|
|
|
pytest_examples_esp32s3_emmc:
|
|
extends:
|
|
- .pytest_examples_dir_template
|
|
- .rules:test:example_test-esp32s3
|
|
needs:
|
|
- job: build_pytest_examples_esp32s3
|
|
artifacts: false
|
|
tags: [ esp32s3, emmc ]
|
|
|
|
.pytest_components_dir_template:
|
|
extends: .pytest_template
|
|
variables:
|
|
TEST_DIR: components
|
|
BUILD_JOB_PREFIX: build_pytest_components_
|
|
|
|
pytest_components_esp32_generic:
|
|
extends:
|
|
- .pytest_components_dir_template
|
|
- .rules:test:component_ut-esp32
|
|
needs:
|
|
- job: build_pytest_components_esp32
|
|
artifacts: false
|
|
tags: [ esp32, generic ]
|
|
parallel: 7
|
|
|
|
pytest_components_esp32_generic_multi_device:
|
|
extends:
|
|
- .pytest_components_dir_template
|
|
- .rules:test:component_ut-esp32
|
|
needs:
|
|
- job: build_pytest_components_esp32
|
|
artifacts: false
|
|
tags: [ esp32, generic_multi_device ]
|
|
|
|
pytest_components_esp32_wifi_two_dut:
|
|
extends:
|
|
- .pytest_components_dir_template
|
|
- .rules:test:component_ut-esp32
|
|
needs:
|
|
- job: build_pytest_components_esp32
|
|
artifacts: false
|
|
tags: [ esp32, wifi_two_dut ]
|
|
|
|
pytest_components_esp32_adc:
|
|
extends:
|
|
- .pytest_components_dir_template
|
|
- .rules:test:component_ut-esp32-adc
|
|
needs:
|
|
- job: build_pytest_components_esp32
|
|
artifacts: false
|
|
tags: [ esp32, adc ]
|
|
|
|
pytest_components_esp32_sdio:
|
|
extends:
|
|
- .pytest_components_dir_template
|
|
- .rules:test:component_ut-esp32-sdio
|
|
needs:
|
|
- job: build_pytest_components_esp32
|
|
artifacts: false
|
|
tags: [ esp32, sdio_master_slave ]
|
|
|
|
pytest_components_esp32_lan8720:
|
|
extends:
|
|
- .pytest_components_dir_template
|
|
- .rules:test:component_ut-esp32
|
|
needs:
|
|
- job: build_pytest_components_esp32
|
|
artifacts: false
|
|
tags: [ esp32, eth_lan8720 ]
|
|
|
|
pytest_components_esp32_rtl8201:
|
|
extends:
|
|
- .pytest_components_dir_template
|
|
- .rules:test:component_ut-esp32
|
|
needs:
|
|
- job: build_pytest_components_esp32
|
|
artifacts: false
|
|
tags: [ esp32, eth_rtl8201 ]
|
|
|
|
pytest_components_esp32_w5500:
|
|
extends:
|
|
- .pytest_components_dir_template
|
|
- .rules:test:component_ut-esp32
|
|
needs:
|
|
- job: build_pytest_components_esp32
|
|
artifacts: false
|
|
tags: [ esp32, eth_w5500 ]
|
|
|
|
pytest_components_esp32_ksz8851snl:
|
|
extends:
|
|
- .pytest_components_dir_template
|
|
- .rules:test:component_ut-esp32
|
|
needs:
|
|
- job: build_pytest_components_esp32
|
|
artifacts: false
|
|
tags: [ esp32, eth_ksz8851snl ]
|
|
|
|
pytest_components_esp32_dm9051:
|
|
extends:
|
|
- .pytest_components_dir_template
|
|
- .rules:test:component_ut-esp32
|
|
needs:
|
|
- job: build_pytest_components_esp32
|
|
artifacts: false
|
|
tags: [ esp32, eth_dm9051 ]
|
|
|
|
pytest_components_esp32_ksz8041:
|
|
extends:
|
|
- .pytest_components_dir_template
|
|
- .rules:test:component_ut-esp32
|
|
needs:
|
|
- job: build_pytest_components_esp32
|
|
artifacts: false
|
|
tags: [ esp32, eth_ksz8041 ]
|
|
|
|
pytest_components_esp32_dp83848:
|
|
extends:
|
|
- .pytest_components_dir_template
|
|
- .rules:test:component_ut-esp32
|
|
needs:
|
|
- job: build_pytest_components_esp32
|
|
artifacts: false
|
|
tags: [ esp32, eth_dp83848 ]
|
|
|
|
pytest_components_esp32_ethernet:
|
|
extends:
|
|
- .pytest_components_dir_template
|
|
- .rules:test:component_ut-esp32
|
|
needs:
|
|
- job: build_pytest_components_esp32
|
|
artifacts: false
|
|
tags: [ esp32, ethernet ]
|
|
|
|
pytest_components_esp32_flash_encryption:
|
|
extends:
|
|
- .pytest_components_dir_template
|
|
- .rules:test:component_ut-esp32
|
|
needs:
|
|
- job: build_pytest_components_esp32
|
|
artifacts: false
|
|
tags: [ esp32, flash_encryption ]
|
|
|
|
pytest_components_esp32_flash_multi:
|
|
extends:
|
|
- .pytest_components_dir_template
|
|
- .rules:test:component_ut-esp32-flash_multi
|
|
needs:
|
|
- job: build_pytest_components_esp32
|
|
artifacts: false
|
|
tags: [ esp32, flash_multi ]
|
|
|
|
pytest_components_esp32_xtal32k:
|
|
extends:
|
|
- .pytest_components_dir_template
|
|
- .rules:test:component_ut-esp32
|
|
needs:
|
|
- job: build_pytest_components_esp32
|
|
artifacts: false
|
|
tags: [ esp32, xtal32k ]
|
|
|
|
pytest_components_esp32_no32kXtal:
|
|
extends:
|
|
- .pytest_components_dir_template
|
|
- .rules:test:component_ut-esp32
|
|
needs:
|
|
- job: build_pytest_components_esp32
|
|
artifacts: false
|
|
tags: [ esp32, no32kXtal ]
|
|
|
|
pytest_components_esp32_rs485_multi:
|
|
extends:
|
|
- .pytest_components_dir_template
|
|
- .rules:test:component_ut-esp32
|
|
needs:
|
|
- job: build_pytest_components_esp32
|
|
artifacts: false
|
|
tags: [ esp32, multi_dut_modbus_rs485 ]
|
|
|
|
pytest_components_esp32_psramv0:
|
|
extends:
|
|
- .pytest_components_dir_template
|
|
- .rules:test:component_ut-esp32
|
|
needs:
|
|
- job: build_pytest_components_esp32
|
|
artifacts: false
|
|
tags: [ esp32, psramv0 ]
|
|
|
|
pytest_components_esp32s2_generic:
|
|
extends:
|
|
- .pytest_components_dir_template
|
|
- .rules:test:component_ut-esp32s2
|
|
needs:
|
|
- job: build_pytest_components_esp32s2
|
|
artifacts: false
|
|
tags: [ esp32s2, generic ]
|
|
parallel: 5
|
|
|
|
pytest_components_esp32s2_generic_multi_device:
|
|
extends:
|
|
- .pytest_components_dir_template
|
|
- .rules:test:component_ut-esp32s2
|
|
needs:
|
|
- job: build_pytest_components_esp32s2
|
|
artifacts: false
|
|
tags: [ esp32s2, generic_multi_device ]
|
|
|
|
pytest_components_esp32s2_adc:
|
|
extends:
|
|
- .pytest_components_dir_template
|
|
- .rules:test:component_ut-esp32s2-adc
|
|
needs:
|
|
- job: build_pytest_components_esp32s2
|
|
artifacts: false
|
|
tags: [ esp32s2, adc ]
|
|
|
|
pytest_components_esp32s2_flash_multi:
|
|
extends:
|
|
- .pytest_components_dir_template
|
|
- .rules:test:component_ut-esp32s2-flash_multi
|
|
needs:
|
|
- job: build_pytest_components_esp32s2
|
|
artifacts: false
|
|
tags: [ esp32s2, flash_multi ]
|
|
|
|
pytest_components_esp32s3_generic:
|
|
extends:
|
|
- .pytest_components_dir_template
|
|
- .rules:test:component_ut-esp32s3
|
|
needs:
|
|
- job: build_pytest_components_esp32s3
|
|
artifacts: false
|
|
tags: [ esp32s3, generic ]
|
|
parallel: 5
|
|
|
|
pytest_components_esp32s3_generic_multi_device:
|
|
extends:
|
|
- .pytest_components_dir_template
|
|
- .rules:test:component_ut-esp32s3
|
|
needs:
|
|
- job: build_pytest_components_esp32s3
|
|
artifacts: false
|
|
tags: [ esp32s3, generic_multi_device ]
|
|
|
|
pytest_components_esp32s3_adc:
|
|
extends:
|
|
- .pytest_components_dir_template
|
|
- .rules:test:component_ut-esp32s3-adc
|
|
needs:
|
|
- job: build_pytest_components_esp32s3
|
|
artifacts: false
|
|
tags: [ esp32s3, adc ]
|
|
|
|
pytest_components_esp32s3_octal_psram:
|
|
extends:
|
|
- .pytest_components_dir_template
|
|
- .rules:test:component_ut-esp32s3
|
|
needs:
|
|
- job: build_pytest_components_esp32s3
|
|
artifacts: false
|
|
tags: [ esp32s3, octal_psram ]
|
|
|
|
pytest_components_esp32s3_quad_psram:
|
|
extends:
|
|
- .pytest_components_dir_template
|
|
- .rules:test:component_ut-esp32s3
|
|
needs:
|
|
- job: build_pytest_components_esp32s3
|
|
artifacts: false
|
|
tags: [ esp32s3, quad_psram ]
|
|
|
|
pytest_components_esp32s3_flash_encryption_f4r8:
|
|
extends:
|
|
- .pytest_components_dir_template
|
|
- .rules:test:component_ut-esp32s3
|
|
needs:
|
|
- job: build_pytest_components_esp32s3
|
|
artifacts: false
|
|
tags: [ esp32s3, flash_encryption_f4r8 ]
|
|
|
|
pytest_components_esp32s3_flash_encryption_f8r8:
|
|
extends:
|
|
- .pytest_components_dir_template
|
|
- .rules:test:component_ut-esp32s3
|
|
needs:
|
|
- job: build_pytest_components_esp32s3
|
|
artifacts: false
|
|
tags: [ esp32s3, flash_encryption_f8r8 ]
|
|
|
|
pytest_components_esp32s3_flash_multi:
|
|
extends:
|
|
- .pytest_components_dir_template
|
|
- .rules:test:component_ut-esp32s3-flash_multi
|
|
needs:
|
|
- job: build_pytest_components_esp32s3
|
|
artifacts: false
|
|
tags: [ esp32s3, flash_multi ]
|
|
|
|
pytest_components_esp32s3_mspi_f4r4:
|
|
extends:
|
|
- .pytest_components_dir_template
|
|
- .rules:test:component_ut-esp32s3
|
|
needs:
|
|
- job: build_pytest_components_esp32s3
|
|
artifacts: false
|
|
tags: [ esp32s3, MSPI_F4R4 ]
|
|
|
|
pytest_components_esp32s3_mspi_f4r8:
|
|
extends:
|
|
- .pytest_components_dir_template
|
|
- .rules:test:component_ut-esp32s3
|
|
needs:
|
|
- job: build_pytest_components_esp32s3
|
|
artifacts: false
|
|
tags: [ esp32s3, MSPI_F4R8 ]
|
|
|
|
pytest_components_esp32s3_mspi_f8r8:
|
|
extends:
|
|
- .pytest_components_dir_template
|
|
- .rules:test:component_ut-esp32s3
|
|
needs:
|
|
- job: build_pytest_components_esp32s3
|
|
artifacts: false
|
|
tags: [ esp32s3, MSPI_F8R8 ]
|
|
|
|
pytest_components_esp32s3_usb_serial_jtag:
|
|
extends:
|
|
- .pytest_components_dir_template
|
|
- .rules:test:component_ut-esp32s3
|
|
needs:
|
|
- build_pytest_components_esp32s3
|
|
tags: [ esp32s3, usb_serial_jtag ]
|
|
|
|
pytest_components_esp32c2_generic:
|
|
extends:
|
|
- .pytest_components_dir_template
|
|
- .rules:test:component_ut-esp32c2
|
|
needs:
|
|
- job: build_pytest_components_esp32c2
|
|
artifacts: false
|
|
tags: [ esp32c2, generic, xtal_40mhz ]
|
|
parallel: 3
|
|
|
|
pytest_components_esp32c2_adc:
|
|
extends:
|
|
- .pytest_components_dir_template
|
|
- .rules:test:component_ut-esp32c2-adc
|
|
needs:
|
|
- job: build_pytest_components_esp32c2
|
|
artifacts: false
|
|
tags: [ esp32c2, adc, xtal_26mhz ]
|
|
|
|
pytest_components_esp32c2_generic_multi_device:
|
|
extends:
|
|
- .pytest_components_dir_template
|
|
- .rules:test:component_ut-esp32c2
|
|
needs:
|
|
- job: build_pytest_components_esp32c2
|
|
artifacts: false
|
|
tags: [ esp32c2, generic_multi_device, xtal_40mhz ]
|
|
|
|
pytest_components_esp32c2_xtal_26mhz:
|
|
extends:
|
|
- .pytest_components_dir_template
|
|
- .rules:test:component_ut-esp32c2
|
|
needs:
|
|
- job: build_pytest_components_esp32c2
|
|
artifacts: false
|
|
tags: [ esp32c2, generic, xtal_26mhz ]
|
|
|
|
pytest_components_esp32c3_generic:
|
|
extends:
|
|
- .pytest_components_dir_template
|
|
- .rules:test:component_ut-esp32c3
|
|
needs:
|
|
- job: build_pytest_components_esp32c3
|
|
artifacts: false
|
|
tags: [ esp32c3, generic ]
|
|
parallel: 3
|
|
|
|
pytest_components_esp32c3_i2c_oled:
|
|
extends:
|
|
- .pytest_components_dir_template
|
|
- .rules:test:component_ut-esp32c3
|
|
needs:
|
|
- job: build_pytest_components_esp32c3
|
|
artifacts: false
|
|
tags: [ esp32c3, i2c_oled ]
|
|
|
|
pytest_components_esp32c3_generic_multi_device:
|
|
extends:
|
|
- .pytest_components_dir_template
|
|
- .rules:test:component_ut-esp32c3
|
|
needs:
|
|
- job: build_pytest_components_esp32c3
|
|
artifacts: false
|
|
tags: [ esp32c3, generic_multi_device ]
|
|
|
|
pytest_components_esp32c3_wifi_two_dut:
|
|
extends:
|
|
- .pytest_components_dir_template
|
|
- .rules:test:component_ut-esp32c3-wifi
|
|
needs:
|
|
- job: build_pytest_components_esp32c3
|
|
artifacts: false
|
|
tags: [ esp32c3, wifi_two_dut ]
|
|
|
|
pytest_components_esp32c3_usb_serial_jtag:
|
|
extends:
|
|
- .pytest_components_dir_template
|
|
- .rules:test:component_ut-esp32c3
|
|
needs:
|
|
- build_pytest_components_esp32c3
|
|
tags: [ esp32c3, usb_serial_jtag ]
|
|
|
|
pytest_components_esp32s3_wifi_two_dut:
|
|
extends:
|
|
- .pytest_components_dir_template
|
|
- .rules:test:component_ut-esp32s3-wifi
|
|
needs:
|
|
- job: build_pytest_components_esp32s3
|
|
artifacts: false
|
|
tags: [ esp32s3, wifi_two_dut ]
|
|
|
|
pytest_components_esp32c2_wifi_two_dut:
|
|
extends:
|
|
- .pytest_components_dir_template
|
|
- .rules:test:component_ut-esp32c2-wifi
|
|
needs:
|
|
- job: build_pytest_components_esp32c2
|
|
artifacts: false
|
|
tags: [ esp32c2, wifi_two_dut, xtal_26mhz ]
|
|
|
|
pytest_components_esp32c3_adc:
|
|
extends:
|
|
- .pytest_components_dir_template
|
|
- .rules:test:component_ut-esp32c3-adc
|
|
needs:
|
|
- job: build_pytest_components_esp32c3
|
|
artifacts: false
|
|
tags: [ esp32c3, adc ]
|
|
|
|
pytest_components_esp32c3_flash_encryption:
|
|
extends:
|
|
- .pytest_components_dir_template
|
|
- .rules:test:component_ut-esp32c3
|
|
needs:
|
|
- job: build_pytest_components_esp32c3
|
|
artifacts: false
|
|
tags: [ esp32c3, flash_encryption ]
|
|
|
|
pytest_components_esp32c3_nvs_encr_hmac:
|
|
extends:
|
|
- .pytest_components_dir_template
|
|
- .rules:test:component_ut-esp32c3-nvs_encr_hmac
|
|
needs:
|
|
- job: build_pytest_components_esp32c3
|
|
artifacts: false
|
|
tags: [ esp32c3, nvs_encr_hmac ]
|
|
|
|
pytest_components_esp32c3_flash_multi:
|
|
extends:
|
|
- .pytest_components_dir_template
|
|
- .rules:test:component_ut-esp32c3-flash_multi
|
|
needs:
|
|
- job: build_pytest_components_esp32c3
|
|
artifacts: false
|
|
tags: [ esp32c3, flash_multi ]
|
|
|
|
pytest_components_esp32_sdmmc:
|
|
extends:
|
|
- .pytest_components_dir_template
|
|
- .rules:test:component_ut-esp32
|
|
needs:
|
|
- job: build_pytest_components_esp32
|
|
artifacts: false
|
|
tags: [ esp32, sdcard_sdmode ]
|
|
|
|
pytest_components_esp32_sdspi:
|
|
extends:
|
|
- .pytest_components_dir_template
|
|
- .rules:test:component_ut-esp32-sdio
|
|
needs:
|
|
- job: build_pytest_components_esp32
|
|
artifacts: false
|
|
tags: [ esp32, sdcard_spimode ]
|
|
|
|
pytest_components_esp32s2_sdspi:
|
|
extends:
|
|
- .pytest_components_dir_template
|
|
- .rules:test:component_ut-esp32s2-sdio
|
|
needs:
|
|
- job: build_pytest_components_esp32s2
|
|
artifacts: false
|
|
tags: [ esp32s2, sdcard_spimode ]
|
|
|
|
pytest_components_esp32c3_sdspi:
|
|
extends:
|
|
- .pytest_components_dir_template
|
|
- .rules:test:component_ut-esp32c3-sdio
|
|
needs:
|
|
- job: build_pytest_components_esp32c3
|
|
artifacts: false
|
|
tags: [ esp32c3, sdcard_spimode ]
|
|
|
|
pytest_components_esp32c6_generic:
|
|
extends:
|
|
- .pytest_components_dir_template
|
|
- .rules:test:component_ut-esp32c6
|
|
needs:
|
|
- job: build_pytest_components_esp32c6
|
|
artifacts: false
|
|
tags: [ esp32c6, generic ]
|
|
parallel: 2
|
|
|
|
pytest_components_esp32c6_usb_serial_jtag:
|
|
extends:
|
|
- .pytest_components_dir_template
|
|
- .rules:test:component_ut-esp32c6
|
|
needs:
|
|
- build_pytest_components_esp32c6
|
|
tags: [ esp32c6, usb_serial_jtag ]
|
|
|
|
pytest_components_esp32h2_generic:
|
|
extends:
|
|
- .pytest_components_dir_template
|
|
- .rules:test:component_ut-esp32h2
|
|
needs:
|
|
- job: build_pytest_components_esp32h2
|
|
artifacts: false
|
|
tags: [ esp32h2, generic ]
|
|
parallel: 2
|
|
|
|
pytest_components_esp32h2_generic_multi_device:
|
|
extends:
|
|
- .pytest_components_dir_template
|
|
- .rules:test:component_ut-esp32h2
|
|
needs:
|
|
- job: build_pytest_components_esp32h2
|
|
artifacts: false
|
|
tags: [ esp32h2, generic_multi_device ]
|
|
|
|
pytest_components_esp32h2_adc:
|
|
extends:
|
|
- .pytest_components_dir_template
|
|
- .rules:test:component_ut-esp32h2-adc
|
|
needs:
|
|
- job: build_pytest_components_esp32h2
|
|
artifacts: false
|
|
tags: [ esp32h2, adc ]
|
|
|
|
pytest_components_esp32h2_ecdsa:
|
|
extends:
|
|
- .pytest_components_dir_template
|
|
- .rules:test:component_ut-esp32h2-ecdsa
|
|
needs:
|
|
- job: build_pytest_components_esp32h2
|
|
artifacts: false
|
|
tags: [ esp32h2, ecdsa_efuse ]
|
|
|
|
pytest_components_esp32h2_usb_serial_jtag:
|
|
extends:
|
|
- .pytest_components_dir_template
|
|
- .rules:test:component_ut-esp32h2
|
|
needs:
|
|
- build_pytest_components_esp32h2
|
|
tags: [ esp32h2, usb_serial_jtag ]
|
|
|
|
pytest_components_esp32c6_generic_multi_device:
|
|
extends:
|
|
- .pytest_components_dir_template
|
|
- .rules:test:component_ut-esp32c6
|
|
needs:
|
|
- job: build_pytest_components_esp32c6
|
|
artifacts: false
|
|
tags: [ esp32c6, generic_multi_device ]
|
|
|
|
pytest_components_esp32c6_adc:
|
|
extends:
|
|
- .pytest_components_dir_template
|
|
- .rules:test:component_ut-esp32c6-adc
|
|
needs:
|
|
- job: build_pytest_components_esp32c6
|
|
artifacts: false
|
|
tags: [ esp32c6, adc ]
|
|
|
|
pytest_components_esp32c6_i154:
|
|
extends:
|
|
- .pytest_components_dir_template
|
|
- .rules:test:component_ut-esp32c6-i154
|
|
needs:
|
|
- job: build_pytest_components_esp32c6
|
|
artifacts: false
|
|
tags: [ esp32c6, ieee802154 ]
|
|
|
|
pytest_examples_openthread_br:
|
|
extends:
|
|
- .pytest_examples_dir_template
|
|
- .rules:test:example_test-i154
|
|
needs:
|
|
- job: build_pytest_examples_esp32s3
|
|
artifacts: false
|
|
- job: build_pytest_examples_esp32c6
|
|
artifacts: false
|
|
- job: build_pytest_examples_esp32h2
|
|
artifacts: false
|
|
tags: [ esp32c6, openthread_br ]
|
|
script:
|
|
- retry_failed git clone $KNOWN_FAILURE_CASES_REPO known_failure_cases
|
|
# get runner env config file
|
|
- retry_failed git clone $TEST_ENV_CONFIG_REPO
|
|
- python $CHECKOUT_REF_SCRIPT ci-test-runner-configs ci-test-runner-configs
|
|
# using runner tags as markers to filter the test cases
|
|
# Runner tags are comma separated, replace the comma with " and " for markers
|
|
- job_tags=$(python tools/ci/python_packages/gitlab_api.py get_job_tags $CI_PROJECT_ID --job_id $CI_JOB_ID)
|
|
- markers=$(echo $job_tags | sed -e "s/,/ and /g")
|
|
# download the artifacts, requires s3, c6, h2 chips
|
|
- run_cmd python tools/ci/artifacts_handler.py download --job-name "build_pytest_examples_esp32s3"
|
|
- run_cmd python tools/ci/artifacts_handler.py download --job-name "build_pytest_examples_esp32c6"
|
|
- run_cmd python tools/ci/artifacts_handler.py download --job-name "build_pytest_examples_esp32h2"
|
|
- run_cmd pytest $TEST_DIR
|
|
-m \"${markers}\"
|
|
--junitxml=XUNIT_RESULT.xml
|
|
--ignore-result-files known_failure_cases/known_failure_cases.txt
|
|
--parallel-count ${CI_NODE_TOTAL:-1}
|
|
--parallel-index ${CI_NODE_INDEX:-1}
|
|
${PYTEST_EXTRA_FLAGS}
|
|
--app-info-filepattern \"list_job_*.txt\"
|
|
|
|
pytest_examples_openthread_bbr:
|
|
extends:
|
|
- .pytest_examples_dir_template
|
|
- .rules:test:example_test-i154
|
|
needs:
|
|
- job: build_pytest_examples_esp32s3
|
|
artifacts: false
|
|
- job: build_pytest_examples_esp32c6
|
|
artifacts: false
|
|
- job: build_pytest_examples_esp32h2
|
|
artifacts: false
|
|
tags: [ esp32c6, openthread_bbr ]
|
|
script:
|
|
- retry_failed git clone $KNOWN_FAILURE_CASES_REPO known_failure_cases
|
|
# get runner env config file
|
|
- retry_failed git clone $TEST_ENV_CONFIG_REPO
|
|
- python $CHECKOUT_REF_SCRIPT ci-test-runner-configs ci-test-runner-configs
|
|
# using runner tags as markers to filter the test cases
|
|
# Runner tags are comma separated, replace the comma with " and " for markers
|
|
- job_tags=$(python tools/ci/python_packages/gitlab_api.py get_job_tags $CI_PROJECT_ID --job_id $CI_JOB_ID)
|
|
- markers=$(echo $job_tags | sed -e "s/,/ and /g")
|
|
# download the artifacts, requires s3, c6, h2 chips
|
|
- run_cmd python tools/ci/artifacts_handler.py download --job-name "build_pytest_examples_esp32s3"
|
|
- run_cmd python tools/ci/artifacts_handler.py download --job-name "build_pytest_examples_esp32c6"
|
|
- run_cmd python tools/ci/artifacts_handler.py download --job-name "build_pytest_examples_esp32h2"
|
|
- run_cmd pytest $TEST_DIR
|
|
-m \"${markers}\"
|
|
--junitxml=XUNIT_RESULT.xml
|
|
--ignore-result-files known_failure_cases/known_failure_cases.txt
|
|
--parallel-count ${CI_NODE_TOTAL:-1}
|
|
--parallel-index ${CI_NODE_INDEX:-1}
|
|
${PYTEST_EXTRA_FLAGS}
|
|
--app-info-filepattern \"list_job_*.txt\"
|
|
|
|
pytest_examples_openthread_sleep:
|
|
extends:
|
|
- .pytest_examples_dir_template
|
|
- .rules:test:example_test-esp32h2
|
|
needs:
|
|
- job: build_pytest_examples_esp32c6
|
|
artifacts: false
|
|
- job: build_pytest_examples_esp32h2
|
|
artifacts: false
|
|
tags: [ esp32c6, openthread_sleep ]
|
|
script:
|
|
- retry_failed git clone $KNOWN_FAILURE_CASES_REPO known_failure_cases
|
|
# get runner env config file
|
|
- retry_failed git clone $TEST_ENV_CONFIG_REPO
|
|
- python $CHECKOUT_REF_SCRIPT ci-test-runner-configs ci-test-runner-configs
|
|
# using runner tags as markers to filter the test cases
|
|
# Runner tags are comma separated, replace the comma with " and " for markers
|
|
- job_tags=$(python tools/ci/python_packages/gitlab_api.py get_job_tags $CI_PROJECT_ID --job_id $CI_JOB_ID)
|
|
- markers=$(echo $job_tags | sed -e "s/,/ and /g")
|
|
# download the artifacts, requires c6, h2 chips
|
|
- run_cmd python tools/ci/artifacts_handler.py download --job-name "build_pytest_examples_esp32c6"
|
|
- run_cmd python tools/ci/artifacts_handler.py download --job-name "build_pytest_examples_esp32h2"
|
|
- run_cmd pytest $TEST_DIR
|
|
-m \"${markers}\"
|
|
--junitxml=XUNIT_RESULT.xml
|
|
--ignore-result-files known_failure_cases/known_failure_cases.txt
|
|
--parallel-count ${CI_NODE_TOTAL:-1}
|
|
--parallel-index ${CI_NODE_INDEX:-1}
|
|
${PYTEST_EXTRA_FLAGS}
|
|
--app-info-filepattern \"list_job_*.txt\"
|
|
|
|
pytest_examples_esp32h2_zigbee:
|
|
extends:
|
|
- .pytest_examples_dir_template
|
|
- .rules:test:example_test-esp32h2
|
|
needs:
|
|
- job: build_pytest_examples_esp32h2
|
|
artifacts: false
|
|
tags: [ esp32h2, zigbee_multi_dut ]
|
|
|
|
pytest_components_esp32s3_usb_host:
|
|
extends:
|
|
- .pytest_components_dir_template
|
|
- .rules:test:component_ut-esp32s3-usb
|
|
needs:
|
|
- job: build_pytest_components_esp32s3
|
|
artifacts: false
|
|
tags: [ esp32s3, usb_host_flash_disk ]
|
|
|
|
.pytest_test_apps_dir_template:
|
|
extends: .pytest_template
|
|
variables:
|
|
TEST_DIR: tools/test_apps
|
|
BUILD_JOB_PREFIX: build_pytest_test_apps_
|
|
REQUIRES_ELF_FILES: "1"
|
|
|
|
pytest_test_apps_esp32_generic:
|
|
extends:
|
|
- .pytest_test_apps_dir_template
|
|
- .rules:test:custom_test-esp32
|
|
needs:
|
|
- job: build_pytest_test_apps_esp32
|
|
artifacts: false
|
|
tags: [ esp32, generic ]
|
|
|
|
pytest_test_apps_esp32_jtag:
|
|
extends:
|
|
- .pytest_test_apps_dir_template
|
|
- .rules:test:custom_test-esp32
|
|
needs:
|
|
- job: build_pytest_test_apps_esp32
|
|
artifacts: false
|
|
tags: [ esp32, jtag ]
|
|
variables:
|
|
PYTEST_EXTRA_FLAGS: "--log-cli-level DEBUG"
|
|
|
|
pytest_test_apps_esp32_ethernet:
|
|
extends:
|
|
- .pytest_test_apps_dir_template
|
|
- .rules:test:custom_test-esp32
|
|
needs:
|
|
- job: build_pytest_test_apps_esp32
|
|
artifacts: false
|
|
tags: [ esp32, ethernet ]
|
|
|
|
pytest_test_apps_esp32s2_generic:
|
|
extends:
|
|
- .pytest_test_apps_dir_template
|
|
- .rules:test:custom_test-esp32s2
|
|
needs:
|
|
- job: build_pytest_test_apps_esp32s2
|
|
artifacts: false
|
|
tags: [ esp32s2, generic ]
|
|
|
|
pytest_test_apps_esp32s3_generic:
|
|
extends:
|
|
- .pytest_test_apps_dir_template
|
|
- .rules:test:custom_test-esp32s3
|
|
needs:
|
|
- job: build_pytest_test_apps_esp32s3
|
|
artifacts: false
|
|
tags: [ esp32s3, generic ]
|
|
|
|
pytest_test_apps_esp32c2_generic:
|
|
extends:
|
|
- .pytest_test_apps_dir_template
|
|
- .rules:test:custom_test-esp32c2
|
|
needs:
|
|
- job: build_pytest_test_apps_esp32c2
|
|
artifacts: false
|
|
tags: [ esp32c2, generic, xtal_40mhz ]
|
|
|
|
pytest_test_apps_esp32c3_generic:
|
|
extends:
|
|
- .pytest_test_apps_dir_template
|
|
- .rules:test:custom_test-esp32c3
|
|
needs:
|
|
- job: build_pytest_test_apps_esp32c3
|
|
artifacts: false
|
|
tags: [ esp32c3, generic ]
|
|
|
|
pytest_test_apps_esp32c6_generic:
|
|
extends:
|
|
- .pytest_test_apps_dir_template
|
|
- .rules:test:custom_test-esp32c6
|
|
needs:
|
|
- job: build_pytest_test_apps_esp32c6
|
|
artifacts: false
|
|
tags: [ esp32c6, generic ]
|
|
|
|
pytest_test_apps_esp32h2_generic:
|
|
extends:
|
|
- .pytest_test_apps_dir_template
|
|
- .rules:test:custom_test-esp32h2
|
|
needs:
|
|
- job: build_pytest_test_apps_esp32h2
|
|
artifacts: false
|
|
tags: [ esp32h2, generic ]
|
|
|
|
pytest_test_apps_esp32s3_mspi_f8r8:
|
|
extends:
|
|
- .pytest_test_apps_dir_template
|
|
- .rules:test:custom_test-esp32s3
|
|
needs:
|
|
- job: build_pytest_test_apps_esp32s3
|
|
artifacts: false
|
|
tags: [ esp32s3, MSPI_F8R8 ]
|
|
|
|
pytest_test_apps_esp32s3_mspi_f4r8:
|
|
extends:
|
|
- .pytest_test_apps_dir_template
|
|
- .rules:test:custom_test-esp32s3
|
|
needs:
|
|
- job: build_pytest_test_apps_esp32s3
|
|
artifacts: false
|
|
tags: [ esp32s3, MSPI_F4R8 ]
|
|
|
|
pytest_test_apps_esp32s3_mspi_f4r4:
|
|
extends:
|
|
- .pytest_test_apps_dir_template
|
|
- .rules:test:custom_test-esp32s3
|
|
needs:
|
|
- job: build_pytest_test_apps_esp32s3
|
|
artifacts: false
|
|
tags: [ esp32s3, MSPI_F4R4 ]
|
|
|
|
pytest_test_apps_esp32s2_wifi_two_dut:
|
|
extends:
|
|
- .pytest_test_apps_dir_template
|
|
- .rules:test:custom_test-esp32s2-wifi
|
|
needs:
|
|
- job: build_pytest_test_apps_esp32s2
|
|
artifacts: false
|
|
tags: [ esp32s2, wifi_two_dut ]
|
|
|
|
pytest_test_apps_esp32s3_wifi_two_dut:
|
|
extends:
|
|
- .pytest_test_apps_dir_template
|
|
- .rules:test:custom_test-esp32s3-wifi
|
|
needs:
|
|
- job: build_pytest_test_apps_esp32s3
|
|
artifacts: false
|
|
tags: [ esp32s3, wifi_two_dut ]
|
|
|
|
pytest_test_apps_esp32c2_wifi_two_dut:
|
|
extends:
|
|
- .pytest_test_apps_dir_template
|
|
- .rules:test:custom_test-esp32c2-wifi
|
|
needs:
|
|
- job: build_pytest_test_apps_esp32c2
|
|
artifacts: false
|
|
tags: [ esp32c2, wifi_two_dut, xtal_26mhz ]
|
|
|
|
pytest_test_apps_esp32c3_wifi_two_dut:
|
|
extends:
|
|
- .pytest_test_apps_dir_template
|
|
- .rules:test:custom_test-esp32c3-wifi
|
|
needs:
|
|
- job: build_pytest_test_apps_esp32c3
|
|
artifacts: false
|
|
tags: [ esp32c3, wifi_two_dut]
|