From 8b8301d84583e8f5390730ef46fffc5edca3e8c1 Mon Sep 17 00:00:00 2001 From: Roland Dobai Date: Mon, 24 Nov 2025 18:24:46 +0100 Subject: [PATCH] ci(gitlab): Upgrade the full dependency tree of CI-related Python packages The eager upgreade policy should upgrade the full dependency tree and not just the packages listed in the requirements file. The disadvantage is some extra time for package resolution. This upgrade policy is applied to CI-related packages only because we don't want this to be used for customer-facing packages and/or provide the customers with a different environment to that tested in the CI. --- .gitlab/ci/common.yml | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/.gitlab/ci/common.yml b/.gitlab/ci/common.yml index a6373abbd4f..505a81bcee1 100644 --- a/.gitlab/ci/common.yml +++ b/.gitlab/ci/common.yml @@ -164,6 +164,15 @@ variables: source ./export.sh section_end "source_export" + # Eager upgrade of CI dependencies + # Done after sourcing export.sh so that we could easily invoke the right pip + section_start "upgrade_ci_dependencies" "Upgrading CI dependencies" + pip install --upgrade --upgrade-strategy=eager -r $IDF_PATH/tools/requirements/requirements.ci.txt -c ~/.espressif/${CI_PYTHON_CONSTRAINT_FILE} + if [[ "${CI_JOB_STAGE}" == "target_test" ]]; then + pip install --upgrade --upgrade-strategy=eager -r $IDF_PATH/tools/requirements/requirements.test-specific.txt -c ~/.espressif/${CI_PYTHON_CONSTRAINT_FILE} + fi + section_end "upgrade_ci_dependencies" + REEXPORT_NEEDED=0 if [[ ! -z "$INSTALL_EXTRA_TOOLS" ]]; then section_start "installing_optional_tools" "Install optional tools ${INSTALL_EXTRA_TOOLS}"