Merge branch 'update_managed_component_light_v1_4_2' into 'release/v1.4.2'

CI: run all the pytest example builds with the same IDF version and fix managed component example build on release/v1.4.2

See merge request app-frameworks/esp-matter!1283
This commit is contained in:
Hrishikesh Dhayagude
2025-10-15 18:26:09 +08:00
3 changed files with 40 additions and 18 deletions
+36 -14
View File
@@ -286,7 +286,7 @@ build_image:
REPOS_PATH: "$CI_PROJECT_DIR/repos"
IDF_CCACHE_ENABLE: 1
build_esp_matter_examples_pytest_C6_idf_v5_1:
build_esp_matter_examples_pytest_C6:
extends:
- .build_examples_template
artifacts:
@@ -306,7 +306,7 @@ build_esp_matter_examples_pytest_C6_idf_v5_1:
- pip install -r tools/ci/requirements-build.txt
- python tools/ci/build_apps.py ./examples --pytest_c6
build_esp_matter_examples_pytest_H2_idf_v5_1:
build_esp_matter_examples_pytest_H2:
extends:
- .build_examples_template
artifacts:
@@ -340,10 +340,10 @@ build_esp_matter_examples_pytest_H2_idf_v5_1:
- python tools/ci/build_apps.py ./examples --pytest_h2
- |
if [ "$CI_PIPELINE_SOURCE" == "merge_request_event" ]; then
python tools/ci/memory_analyzer.py --chip esp32h2 --job_name "build_esp_matter_examples_pytest_H2_idf_v5_1" --ref_map_file light_mr_base.map --example "light"
python tools/ci/memory_analyzer.py --chip esp32h2 --job_name "build_esp_matter_examples_pytest_H2" --ref_map_file light_mr_base.map --example "light"
fi
build_esp_matter_examples_pytest_C2_idf_v5_1:
build_esp_matter_examples_pytest_C2:
extends:
- .build_examples_template
artifacts:
@@ -367,7 +367,7 @@ build_esp_matter_examples_pytest_C2_idf_v5_1:
- python tools/ci/build_apps.py ./examples --pytest_c2
- |
if [ "$CI_PIPELINE_SOURCE" == "merge_request_event" ]; then
python tools/ci/memory_analyzer.py --chip esp32c2 --job_name "build_esp_matter_examples_pytest_C2_idf_v5_1" --ref_map_file light_mr_base.map --example "light"
python tools/ci/memory_analyzer.py --chip esp32c2 --job_name "build_esp_matter_examples_pytest_C2" --ref_map_file light_mr_base.map --example "light"
fi
@@ -460,7 +460,7 @@ build_nopytest_remaining_examples_manual:
parallel: 2
build_esp_matter_examples_pytest_C3_idf_v4_4:
build_esp_matter_examples_idf_v4_4:
extends:
- .build_examples_template
image: ${DOCKER_IMAGE_NAME}:chip_${CHIP_SHORT_HASH}_idf_${IDF_CHECKOUT_REF}
@@ -480,7 +480,6 @@ build_esp_matter_examples_pytest_C3_idf_v4_4:
- cd ${ESP_MATTER_PATH}
# idf v4.4 requires jinja < 3.1 so lets install the dependencies for idf v4.4
- pip install -r requirements_idf_v4.4.txt
- pip install -r tools/ci/requirements-build.txt
# hack the construct==2.10.54 to make it work with idf-v4.4, Python3.12
# imp is not present in Python3.12 so remove it
- wget https://files.pythonhosted.org/packages/30/2f/e2e6bad1b80f744cf5c2a6d622e3dee698b43e6c040f980ae0ac0edd5e54/construct-2.10.54.tar.gz
@@ -488,17 +487,42 @@ build_esp_matter_examples_pytest_C3_idf_v4_4:
- sed -i 's/, imp$//g' construct-2.10.54/construct/core.py
- python3 -m pip install ./construct-2.10.54
- rm -rf construct-2.10.54*
- python tools/ci/build_apps.py ./examples --pytest_c3
- cd ${ESP_MATTER_PATH}/examples/light
- idf.py set-target esp32c3
- idf.py build
variables:
IDF_CHECKOUT_REF: "v4.4.3"
build_esp_matter_examples_pytest_C3:
extends:
- .build_examples_template
image: ${DOCKER_IMAGE_NAME}:chip_${CHIP_SHORT_HASH}_idf_${IDF_CHECKOUT_REF}
artifacts:
paths:
- "examples/**/build*/size.json"
- "examples/**/build*/build_log.txt"
- "examples/**/build*/*.map"
- "examples/**/build*/*.bin"
- "examples/**/build*/flasher_args.json"
- "examples/**/build*/config/sdkconfig.json"
- "examples/**/build*/bootloader/*.bin"
- "examples/**/build*/partition_table/*.bin"
when: always
expire_in: 4 days
script:
- cd ${ESP_MATTER_PATH}
- pip install -r tools/ci/requirements-build.txt
- python tools/ci/build_apps.py ./examples --pytest_c3
pytest_esp32c3_esp_matter_dut:
stage: target_test
image: ${DOCKER_IMAGE_NAME}:chip_${CHIP_SHORT_HASH}_idf_${IDF_CHECKOUT_REF}
rules:
- if: $CI_PIPELINE_SOURCE == "merge_request_event" || $CI_COMMIT_BRANCH == "main" || $CI_PIPELINE_SOURCE == "push"
needs:
- build_esp_matter_examples_pytest_C3_idf_v4_4
- build_esp_matter_examples_pytest_C3
script:
- cd ${ESP_MATTER_PATH}
- rm -rf connectedhomeip/connectedhomeip
@@ -506,8 +530,6 @@ pytest_esp32c3_esp_matter_dut:
- pip install -r tools/ci/requirements-pytest.txt
- pytest examples/ --target esp32c3 -m esp_matter_dut --junitxml=XUNIT_RESULT.xml
tags: ["esp32c3", "esp_matter_dut"]
variables:
IDF_CHECKOUT_REF: "v4.4.3"
pytest_esp32c6_esp_matter_dut:
stage: target_test
@@ -515,7 +537,7 @@ pytest_esp32c6_esp_matter_dut:
rules:
- if: $CI_PIPELINE_SOURCE == 'merge_request_event' || $CI_COMMIT_BRANCH == "main" || $CI_PIPELINE_SOURCE == "push"
needs:
- build_esp_matter_examples_pytest_C6_idf_v5_1
- build_esp_matter_examples_pytest_C6
script:
- cd ${ESP_MATTER_PATH}
- rm -rf connectedhomeip/connectedhomeip
@@ -540,7 +562,7 @@ pytest_esp32c2_esp_matter_dut:
rules:
- if: $CI_PIPELINE_SOURCE == 'merge_request_event' || $CI_COMMIT_BRANCH == "main" || $CI_PIPELINE_SOURCE == "push"
needs:
- build_esp_matter_examples_pytest_C2_idf_v5_1
- build_esp_matter_examples_pytest_C2
script:
- cd ${ESP_MATTER_PATH}
- rm -rf connectedhomeip/connectedhomeip
@@ -559,7 +581,7 @@ pytest_esp32h2_esp_matter_dut:
rules:
- if: $CI_PIPELINE_SOURCE == "merge_request_event" || $CI_COMMIT_BRANCH == "main" || $CI_PIPELINE_SOURCE == "push"
needs:
- build_esp_matter_examples_pytest_H2_idf_v5_1
- build_esp_matter_examples_pytest_H2
script:
- cd ${ESP_MATTER_PATH}
- rm -rf connectedhomeip/connectedhomeip
@@ -164,13 +164,13 @@ extern "C" void app_main()
extended_color_light::config_t light_config;
light_config.on_off.on_off = DEFAULT_POWER;
//light_config.on_off_lighting.start_up_on_off = nullptr;
light_config.on_off_lighting.start_up_on_off = nullptr;
light_config.level_control.current_level = DEFAULT_BRIGHTNESS;
light_config.level_control.on_level = DEFAULT_BRIGHTNESS;
//light_config.level_control_lighting.start_up_current_level = DEFAULT_BRIGHTNESS;
light_config.level_control_lighting.start_up_current_level = DEFAULT_BRIGHTNESS;
light_config.color_control.color_mode = (uint8_t)ColorControl::ColorMode::kColorTemperature;
light_config.color_control.enhanced_color_mode = (uint8_t)ColorControl::ColorMode::kColorTemperature;
light_config.color_control.color_temperature.startup_color_temperature_mireds = nullptr;
light_config.color_control_color_temperature.startup_color_temperature_mireds = nullptr;
// endpoint handles can be used to add/modify clusters.
endpoint_t *endpoint = extended_color_light::create(node, &light_config, ENDPOINT_FLAG_NONE, light_handle);
@@ -9,4 +9,4 @@ dependencies:
espressif/led_strip:
version: "^2.0.0"
espressif/esp_matter:
version: "^1.4.0"
version: "~1.4.2"