kopia lustrzana https://github.com/espressif/esp-idf
66 wiersze
1.7 KiB
Python
Executable File
66 wiersze
1.7 KiB
Python
Executable File
#!/usr/bin/env python
|
|
|
|
# SPDX-FileCopyrightText: 2023 Espressif Systems (Shanghai) CO LTD
|
|
# SPDX-License-Identifier: Apache-2.0
|
|
|
|
import glob
|
|
import os
|
|
import typing as t
|
|
from pathlib import Path
|
|
|
|
from idf_ci_utils import IDF_PATH
|
|
|
|
|
|
def print_list(_list: t.Iterable[t.Any], title: t.Optional[str] = None) -> None:
|
|
if not _list:
|
|
return
|
|
|
|
if title:
|
|
print(title)
|
|
|
|
for i in _list:
|
|
print('- ', str(i))
|
|
|
|
|
|
if __name__ == '__main__':
|
|
os.chdir(IDF_PATH)
|
|
ignore_lists: t.Set[Path] = set()
|
|
ignore_lists.update(Path('tools', 'ci').glob('**/*.txt'))
|
|
ignore_lists.remove(Path('tools', 'ci', 'ignore_build_warnings.txt'))
|
|
ignore_lists.remove(Path('tools', 'ci', 'check_ldgen_mapping_exceptions.txt'))
|
|
|
|
print_list(ignore_lists, 'Ignore lists:')
|
|
|
|
updated_files = []
|
|
for f in ignore_lists:
|
|
print('Checking file:', f)
|
|
|
|
updated = False
|
|
lines = []
|
|
with open(f) as fr:
|
|
for line in map(str.strip, fr.readlines()):
|
|
if line.startswith('#'):
|
|
lines.append(line)
|
|
continue
|
|
|
|
if not line:
|
|
lines.append(line)
|
|
continue
|
|
|
|
glob_pattern = line
|
|
if not list(glob.glob(glob_pattern, recursive=True)):
|
|
print(' - No match:', glob_pattern)
|
|
updated = True
|
|
else:
|
|
lines.append(glob_pattern)
|
|
lines.append('')
|
|
|
|
if updated:
|
|
updated_files.append(f)
|
|
with open(f, 'w') as fw:
|
|
fw.write('\n'.join(lines))
|
|
|
|
if updated_files:
|
|
print_list(updated_files, 'Updated files:')
|
|
exit(1)
|