377 lines
9.8 KiB
YAML
377 lines
9.8 KiB
YAML
variables:
|
|
DOCKER_TARGET_TEST_v5_5_ENV_IMAGE: "${CI_DOCKER_REGISTRY}/target-test-env-v5.5:2"
|
|
|
|
.test_template: &test_template
|
|
image: ${DOCKER_TARGET_TEST_v5_5_ENV_IMAGE}
|
|
stage: target_test
|
|
timeout: 4 hour
|
|
variables:
|
|
GIT_DEPTH: 1
|
|
SUBMODULES_TO_FETCH: "none"
|
|
cache:
|
|
# Usually do not need submodule-cache in target_test
|
|
- key: pip-cache
|
|
paths:
|
|
- .cache/pip
|
|
policy: pull
|
|
|
|
.pytest_template:
|
|
<<: *test_template
|
|
artifacts:
|
|
when: always
|
|
paths:
|
|
- XUNIT_RESULT.xml
|
|
- pytest_embedded_log/
|
|
reports:
|
|
junit: XUNIT_RESULT.xml
|
|
expire_in: 4 days
|
|
variables:
|
|
TEST_TARGET: 'esp32s3'
|
|
TEST_FOLDER: '.'
|
|
TEST_ENV: 'generic'
|
|
script:
|
|
- pip install -r .gitlab/requirements/requirement.pytest.txt
|
|
- pytest ${TEST_FOLDER} --target ${TEST_TARGET} --env ${TEST_ENV} --junitxml=XUNIT_RESULT.xml
|
|
|
|
.idf_esp32s3_version_matrix: &idf_esp32s3_version_matrix
|
|
- IDF_TARGET: esp32s3
|
|
IDF_VERSION: "5.5"
|
|
ENV_TAG: "generic"
|
|
|
|
.idf_target_version_matrix: &idf_target_version_matrix
|
|
- IDF_TARGET: esp32s3
|
|
IDF_VERSION: "5.5"
|
|
ENV_TAG: "generic"
|
|
- IDF_TARGET: esp32p4
|
|
IDF_VERSION: "5.5"
|
|
ENV_TAG: "generic,eco4"
|
|
|
|
#
|
|
# Test apps: brookesia_lib_utils
|
|
#
|
|
# check
|
|
components_test_brookesia_lib_utils_check:
|
|
extends:
|
|
- .pytest_template
|
|
- .rules:build:test_apps_brookesia_lib_utils_check
|
|
needs:
|
|
- job: "build_test_apps_brookesia_lib_utils_check"
|
|
artifacts: true
|
|
optional: true
|
|
parallel:
|
|
matrix: *idf_target_version_matrix
|
|
tags:
|
|
- ${IDF_TARGET}
|
|
- ${ENV_TAG}
|
|
variables:
|
|
TEST_TARGET: ${IDF_TARGET}
|
|
TEST_FOLDER: utils/brookesia_lib_utils/test_apps/check
|
|
TEST_ENV: ${ENV_TAG}
|
|
# function_guard
|
|
components_test_brookesia_lib_utils_function_guard:
|
|
extends:
|
|
- .pytest_template
|
|
- .rules:build:test_apps_brookesia_lib_utils_function_guard
|
|
needs:
|
|
- job: "build_test_apps_brookesia_lib_utils_function_guard"
|
|
artifacts: true
|
|
optional: true
|
|
parallel:
|
|
matrix: *idf_target_version_matrix
|
|
tags:
|
|
- ${IDF_TARGET}
|
|
- ${ENV_TAG}
|
|
variables:
|
|
TEST_TARGET: ${IDF_TARGET}
|
|
TEST_FOLDER: utils/brookesia_lib_utils/test_apps/function_guard
|
|
TEST_ENV: ${ENV_TAG}
|
|
# describe_helpers
|
|
components_test_brookesia_lib_utils_describe_helpers:
|
|
extends:
|
|
- .pytest_template
|
|
- .rules:build:test_apps_brookesia_lib_utils_describe_helpers
|
|
needs:
|
|
- job: "build_test_apps_brookesia_lib_utils_describe_helpers"
|
|
artifacts: true
|
|
optional: true
|
|
parallel:
|
|
matrix: *idf_target_version_matrix
|
|
tags:
|
|
- ${IDF_TARGET}
|
|
- ${ENV_TAG}
|
|
variables:
|
|
TEST_TARGET: ${IDF_TARGET}
|
|
TEST_FOLDER: utils/brookesia_lib_utils/test_apps/describe_helpers
|
|
TEST_ENV: ${ENV_TAG}
|
|
# log
|
|
components_test_brookesia_lib_utils_log:
|
|
extends:
|
|
- .pytest_template
|
|
- .rules:build:test_apps_brookesia_lib_utils_log
|
|
needs:
|
|
- job: "build_test_apps_brookesia_lib_utils_log"
|
|
artifacts: true
|
|
optional: true
|
|
parallel:
|
|
matrix: *idf_target_version_matrix
|
|
tags:
|
|
- ${IDF_TARGET}
|
|
- ${ENV_TAG}
|
|
variables:
|
|
TEST_TARGET: ${IDF_TARGET}
|
|
TEST_FOLDER: utils/brookesia_lib_utils/test_apps/log
|
|
TEST_ENV: ${ENV_TAG}
|
|
# memory_profiler
|
|
components_test_brookesia_lib_utils_memory_profiler:
|
|
extends:
|
|
- .pytest_template
|
|
- .rules:build:test_apps_brookesia_lib_utils_memory_profiler
|
|
needs:
|
|
- job: "build_test_apps_brookesia_lib_utils_memory_profiler"
|
|
artifacts: true
|
|
optional: true
|
|
parallel:
|
|
matrix: *idf_target_version_matrix
|
|
tags:
|
|
- ${IDF_TARGET}
|
|
- ${ENV_TAG}
|
|
variables:
|
|
TEST_TARGET: ${IDF_TARGET}
|
|
TEST_FOLDER: utils/brookesia_lib_utils/test_apps/memory_profiler
|
|
TEST_ENV: ${ENV_TAG}
|
|
# plugin
|
|
components_test_brookesia_lib_utils_plugin:
|
|
extends:
|
|
- .pytest_template
|
|
- .rules:build:test_apps_brookesia_lib_utils_plugin
|
|
needs:
|
|
- job: "build_test_apps_brookesia_lib_utils_plugin"
|
|
artifacts: true
|
|
optional: true
|
|
parallel:
|
|
matrix: *idf_target_version_matrix
|
|
tags:
|
|
- ${IDF_TARGET}
|
|
- ${ENV_TAG}
|
|
variables:
|
|
TEST_TARGET: ${IDF_TARGET}
|
|
TEST_FOLDER: utils/brookesia_lib_utils/test_apps/plugin
|
|
TEST_ENV: ${ENV_TAG}
|
|
# state_machine
|
|
components_test_brookesia_lib_utils_state_machine:
|
|
extends:
|
|
- .pytest_template
|
|
- .rules:build:test_apps_brookesia_lib_utils_state_machine
|
|
needs:
|
|
- job: "build_test_apps_brookesia_lib_utils_state_machine"
|
|
artifacts: true
|
|
optional: true
|
|
parallel:
|
|
matrix: *idf_target_version_matrix
|
|
tags:
|
|
- ${IDF_TARGET}
|
|
- ${ENV_TAG}
|
|
variables:
|
|
TEST_TARGET: ${IDF_TARGET}
|
|
TEST_FOLDER: utils/brookesia_lib_utils/test_apps/state_machine
|
|
TEST_ENV: ${ENV_TAG}
|
|
# task_scheduler
|
|
components_test_brookesia_lib_utils_task_scheduler:
|
|
extends:
|
|
- .pytest_template
|
|
- .rules:build:test_apps_brookesia_lib_utils_task_scheduler
|
|
needs:
|
|
- job: "build_test_apps_brookesia_lib_utils_task_scheduler"
|
|
artifacts: true
|
|
optional: true
|
|
parallel:
|
|
matrix: *idf_target_version_matrix
|
|
tags:
|
|
- ${IDF_TARGET}
|
|
- ${ENV_TAG}
|
|
variables:
|
|
TEST_TARGET: ${IDF_TARGET}
|
|
TEST_FOLDER: utils/brookesia_lib_utils/test_apps/task_scheduler
|
|
TEST_ENV: ${ENV_TAG}
|
|
# thread_config
|
|
components_test_brookesia_lib_utils_thread_config:
|
|
extends:
|
|
- .pytest_template
|
|
- .rules:build:test_apps_brookesia_lib_utils_thread_config
|
|
needs:
|
|
- job: "build_test_apps_brookesia_lib_utils_thread_config"
|
|
artifacts: true
|
|
optional: true
|
|
parallel:
|
|
matrix: *idf_target_version_matrix
|
|
tags:
|
|
- ${IDF_TARGET}
|
|
- ${ENV_TAG}
|
|
variables:
|
|
TEST_TARGET: ${IDF_TARGET}
|
|
TEST_FOLDER: utils/brookesia_lib_utils/test_apps/thread_config
|
|
TEST_ENV: ${ENV_TAG}
|
|
# thread_profiler
|
|
components_test_brookesia_lib_utils_thread_profiler:
|
|
extends:
|
|
- .pytest_template
|
|
- .rules:build:test_apps_brookesia_lib_utils_thread_profiler
|
|
needs:
|
|
- job: "build_test_apps_brookesia_lib_utils_thread_profiler"
|
|
artifacts: true
|
|
optional: true
|
|
parallel:
|
|
matrix: *idf_target_version_matrix
|
|
tags:
|
|
- ${IDF_TARGET}
|
|
- ${ENV_TAG}
|
|
variables:
|
|
TEST_TARGET: ${IDF_TARGET}
|
|
TEST_FOLDER: utils/brookesia_lib_utils/test_apps/thread_profiler
|
|
TEST_ENV: ${ENV_TAG}
|
|
# time_profiler
|
|
components_test_brookesia_lib_utils_time_profiler:
|
|
extends:
|
|
- .pytest_template
|
|
- .rules:build:test_apps_brookesia_lib_utils_time_profiler
|
|
needs:
|
|
- job: "build_test_apps_brookesia_lib_utils_time_profiler"
|
|
artifacts: true
|
|
optional: true
|
|
parallel:
|
|
matrix: *idf_target_version_matrix
|
|
tags:
|
|
- ${IDF_TARGET}
|
|
- ${ENV_TAG}
|
|
variables:
|
|
TEST_TARGET: ${IDF_TARGET}
|
|
TEST_FOLDER: utils/brookesia_lib_utils/test_apps/time_profiler
|
|
TEST_ENV: ${ENV_TAG}
|
|
# brookesia_service_manager
|
|
components_test_brookesia_service_manager:
|
|
extends:
|
|
- .pytest_template
|
|
- .rules:build:test_apps_brookesia_service_manager
|
|
needs:
|
|
- job: "build_test_apps_brookesia_service_manager"
|
|
artifacts: true
|
|
optional: true
|
|
parallel:
|
|
matrix: *idf_target_version_matrix
|
|
tags:
|
|
- ${IDF_TARGET}
|
|
- ${ENV_TAG}
|
|
variables:
|
|
TEST_TARGET: ${IDF_TARGET}
|
|
TEST_FOLDER: service/brookesia_service_manager/test_apps
|
|
TEST_ENV: ${ENV_TAG}
|
|
# brookesia_service_custom
|
|
components_test_brookesia_service_custom:
|
|
extends:
|
|
- .pytest_template
|
|
- .rules:build:test_apps_brookesia_service_custom
|
|
needs:
|
|
- job: "build_test_apps_brookesia_service_custom"
|
|
artifacts: true
|
|
optional: true
|
|
parallel:
|
|
matrix: *idf_target_version_matrix
|
|
tags:
|
|
- ${IDF_TARGET}
|
|
- ${ENV_TAG}
|
|
variables:
|
|
TEST_TARGET: ${IDF_TARGET}
|
|
TEST_FOLDER: service/brookesia_service_custom/test_apps
|
|
TEST_ENV: ${ENV_TAG}
|
|
# brookesia_service_nvs
|
|
components_test_brookesia_service_nvs:
|
|
extends:
|
|
- .pytest_template
|
|
- .rules:build:test_apps_brookesia_service_nvs
|
|
needs:
|
|
- job: "build_test_apps_brookesia_service_nvs"
|
|
artifacts: true
|
|
optional: true
|
|
parallel:
|
|
matrix: *idf_target_version_matrix
|
|
tags:
|
|
- ${IDF_TARGET}
|
|
- ${ENV_TAG}
|
|
variables:
|
|
TEST_TARGET: ${IDF_TARGET}
|
|
TEST_FOLDER: service/brookesia_service_nvs/test_apps
|
|
TEST_ENV: ${ENV_TAG}
|
|
# brookesia_service_sntp
|
|
components_test_brookesia_service_sntp:
|
|
extends:
|
|
- .pytest_template
|
|
- .rules:build:test_apps_brookesia_service_sntp
|
|
needs:
|
|
- job: "build_test_apps_brookesia_service_sntp"
|
|
artifacts: true
|
|
optional: true
|
|
parallel:
|
|
matrix: *idf_target_version_matrix
|
|
tags:
|
|
- ${IDF_TARGET}
|
|
- ${ENV_TAG}
|
|
variables:
|
|
TEST_TARGET: ${IDF_TARGET}
|
|
TEST_FOLDER: service/brookesia_service_sntp/test_apps
|
|
TEST_ENV: ${ENV_TAG}
|
|
# brookesia_service_wifi
|
|
components_test_brookesia_service_wifi:
|
|
extends:
|
|
- .pytest_template
|
|
- .rules:build:test_apps_brookesia_service_wifi
|
|
needs:
|
|
- job: "build_test_apps_brookesia_service_wifi"
|
|
artifacts: true
|
|
optional: true
|
|
parallel:
|
|
matrix:
|
|
- IDF_TARGET: esp32s3
|
|
IDF_VERSION: "5.5"
|
|
ENV_TAG: "generic"
|
|
- IDF_TARGET: esp32s3
|
|
IDF_VERSION: "5.5"
|
|
ENV_TAG: "generic,octal-psram"
|
|
- IDF_TARGET: esp32p4
|
|
IDF_VERSION: "5.5"
|
|
ENV_TAG: "generic,eco4,esp32p4_function_ev_board"
|
|
tags:
|
|
- ${IDF_TARGET}
|
|
- ${ENV_TAG}
|
|
variables:
|
|
TEST_TARGET: ${IDF_TARGET}
|
|
TEST_FOLDER: service/brookesia_service_wifi/test_apps
|
|
TEST_ENV: ${ENV_TAG}
|
|
|
|
#
|
|
# Examples
|
|
#
|
|
# service_console
|
|
examples_test_service_console:
|
|
extends:
|
|
- .pytest_template
|
|
- .rules:build:examples_service_console
|
|
needs:
|
|
- job: "build_examples_service_console"
|
|
artifacts: true
|
|
optional: true
|
|
parallel:
|
|
matrix:
|
|
- IDF_TARGET: esp32s3
|
|
IDF_VERSION: "5.5"
|
|
ENV_TAG: "generic"
|
|
- IDF_TARGET: esp32p4
|
|
IDF_VERSION: "5.5"
|
|
ENV_TAG: "generic,eco4,esp32p4_function_ev_board"
|
|
tags:
|
|
- ${IDF_TARGET}
|
|
- ${ENV_TAG}
|
|
variables:
|
|
TEST_TARGET: ${IDF_TARGET}
|
|
TEST_FOLDER: examples/service_console
|
|
TEST_ENV: ${ENV_TAG}
|