Skip to content

Commit 2508d3f

Browse files
committed
Merge branch 'fix/ci_cli_installer_cmake_v5.3' into 'release/v5.3'
ci(tools): Fix IDF_MIRROR_PREFIX_MAP for including all tools from local (v5.3) See merge request espressif/esp-idf!30552
2 parents b494330 + 6a5ab20 commit 2508d3f

File tree

3 files changed

+12
-9
lines changed

3 files changed

+12
-9
lines changed

.gitlab/ci/host-test.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -133,7 +133,7 @@ test_cli_installer:
133133
script:
134134
# Tools must be downloaded for testing
135135
# We could use "idf_tools.py download all", but we don't want to install clang because of its huge size
136-
- python3 ${IDF_PATH}/tools/idf_tools.py download required qemu-riscv32 qemu-xtensa
136+
- python3 ${IDF_PATH}/tools/idf_tools.py download required qemu-riscv32 qemu-xtensa cmake
137137
- cd ${IDF_PATH}/tools/test_idf_tools
138138
- python3 -m pip install jsonschema
139139
- python3 ./test_idf_tools.py -v

.gitlab/ci/test-win.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ test_cli_installer_win:
3131
IDF_PATH: "$CI_PROJECT_DIR"
3232
script:
3333
# Tools must be downloaded for testing
34-
- python ${IDF_PATH}\tools\idf_tools.py download required qemu-riscv32 qemu-xtensa
34+
- python ${IDF_PATH}\tools\idf_tools.py download required qemu-riscv32 qemu-xtensa cmake
3535
- cd ${IDF_PATH}\tools\test_idf_tools
3636
- python -m pip install jsonschema
3737
- python .\test_idf_tools.py

tools/test_idf_tools/test_idf_tools.py

Lines changed: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -118,14 +118,17 @@ def setUpClass(cls):
118118
old_tools_dir = os.environ.get('IDF_TOOLS_PATH') or os.path.expanduser(idf_tools.IDF_TOOLS_PATH_DEFAULT)
119119

120120
mirror_prefix_map = None
121-
if os.path.exists(old_tools_dir):
122-
mirror_prefix_map = 'https://dl.espressif.com/dl/toolchains/preview,file:' + os.path.join(old_tools_dir,
123-
'dist')
124-
mirror_prefix_map += ';https://dl.espressif.com/dl,file:' + os.path.join(old_tools_dir, 'dist')
125-
mirror_prefix_map += ';https://github.com/espressif/.*/releases/download/.*/,file:' + os.path.join(
126-
old_tools_dir, 'dist', '')
121+
if os.path.exists(old_tools_dir) and sys.platform != 'win32':
122+
# These are are all mapping to filesystem. Windows cannot download from there not even if file:// is omitted
123+
local = ''.join(['file://', os.path.join(old_tools_dir, 'dist', '')])
124+
125+
mirror_prefix_map = ';'.join([f'https://dl.espressif.com/dl,{local}',
126+
f'https://github.com/.*/.*/releases/download/.*/,{local}'])
127+
128+
# Windows will keep downloading the tools from default location or IDF_MIRROR_PREFIX_MAP if set globally
129+
127130
if mirror_prefix_map:
128-
print('Using IDF_MIRROR_PREFIX_MAP={}'.format(mirror_prefix_map))
131+
print(f'Using IDF_MIRROR_PREFIX_MAP={mirror_prefix_map}')
129132
os.environ['IDF_MIRROR_PREFIX_MAP'] = mirror_prefix_map
130133

131134
cls.temp_tools_dir = tempfile.mkdtemp(prefix='idf_tools_tmp')

0 commit comments

Comments
 (0)