@@ -33,9 +33,6 @@ concurrency:
3333
3434jobs :
3535 build :
36- env :
37- component_manager_ver : " 2.4.*"
38- idf_build_apps_ver : " 2.10.1"
3936 outputs :
4037 ignored_failure : ${{ steps.ignored-failure.outputs.failed }}
4138 strategy :
@@ -78,12 +75,13 @@ jobs:
7875 # When event not a pull-request, the action before must be skipped and the steps.changed-files.outputs.all_modified_files variable is not exists and must be removed
7976 ALL_CHANGED_FILES : ${{ (github.event_name != 'pull_request') && format(' ') || format('--modified-files=') }}${{ (github.event_name != 'pull_request') && format(' ') || steps.changed-files.outputs.all_modified_files }}
8077 run : |
81- . ${IDF_PATH}/export.sh
82- pip install idf-component-manager==${{ env.component_manager_ver }} ruamel.yaml idf-build-apps==${{ env.idf_build_apps_ver }} --upgrade
78+ export IDF_PYTHON_CHECK_CONSTRAINTS=yes
79+ ${IDF_PATH}/install.sh --enable-ci
80+ source ${IDF_PATH}/export.sh
8381
8482 echo "Files changed: "${{env.ALL_CHANGED_FILES}}
85- idf-build-apps find ${{env.ALL_CHANGED_FILES}}
86- idf-build-apps build --parallel-count ${{ matrix.parallel_count }} --parallel-index ${{ matrix.parallel_index }} ${{env.ALL_CHANGED_FILES}} --collect-app-info build_info_${{ matrix.idf_ver }}_${{ matrix.parallel_index }}.json
83+ idf-build-apps find --path . --target all ${{env.ALL_CHANGED_FILES}}
84+ idf-build-apps build --path . --target all -- parallel-count ${{ matrix.parallel_count }} --parallel-index ${{ matrix.parallel_index }} ${{env.ALL_CHANGED_FILES}} --collect-app-info build_info_${{ matrix.idf_ver }}_${{ matrix.parallel_index }}.json
8785
8886 - name : Save and write the outcome of an ignored failing job
8987 id : ignored-failure
@@ -150,26 +148,26 @@ jobs:
150148 PYTEST_BENCHMARK_IGNORE : ${{ (contains(github.event.pull_request.labels.*.name, 'Run benchmark') || contains(inputs.WFType, 'Build + Tests + Benchmark') || github.ref_name == 'master') && format(' ') || format('--ignore=examples/display_lvgl_benchmark') }}
151149 runs-on : [self-hosted, Linux, bspwall]
152150 container :
153- image : python:3.11-bookworm
151+ image : espressif/idf:${{ matrix.idf_ver }}
154152 options : --privileged -v /dev/boards:/dev/boards/ # Privileged mode has access to serial ports
155153 steps :
156154 - uses : actions/checkout@v4
157155 - uses : actions/download-artifact@v4
158156 with :
159157 pattern : app_binaries_${{ matrix.idf_ver }}_*
160158 merge-multiple : true
161- - name : Install Python packages
162- env :
163- PIP_EXTRA_INDEX_URL : " https://dl.espressif.com/pypi/"
164- run : |
165- pip install --prefer-binary cryptography pytest-embedded pytest-embedded-serial-esp pytest-embedded-idf pytest-custom_exit_code pytest-xdist
166159 - name : Download latest results
167160 uses : actions/download-artifact@v4
168161 with :
169162 pattern : benchmark_*
170163 path : benchmark/
171164 - name : Run apps
172165 run : |
166+ export IDF_PYTHON_CHECK_CONSTRAINTS=yes
167+ ${IDF_PATH}/install.sh --enable-ci --enable-pytest
168+ . ${IDF_PATH}/export.sh
169+ pip install --prefer-binary pytest-custom_exit_code pytest-xdist
170+
173171 export PYTEST_EMBEDDED_CACHE_DIR=/tmp/pytest-embedded-cache-dummy
174172 mkdir -p /tmp/pytest-embedded-cache-dummy
175173 pytest --suppress-no-test-exit-code --ignore-glob '*/managed_components/*' --ignore=.github --junit-xml=${{ env.TEST_RESULT_FILE }} -k "${{ matrix.runner.example }} and not test_example_display_sensors" -n auto ${{ env.PYTEST_BENCHMARK_IGNORE }}
0 commit comments