Skip to content

Commit 0ae0838

Browse files
committed
fix(ci): Fix IDF examples compilation when changing source files
1 parent 420adce commit 0ae0838

File tree

1 file changed

+13
-0
lines changed

1 file changed

+13
-0
lines changed

.github/scripts/get_affected.py

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -790,6 +790,19 @@ def find_affected_sketches(changed_files: list[str]) -> None:
790790
print(f"Total affected sketches: {len(affected_sketches)}", file=sys.stderr)
791791
return
792792

793+
# For component mode: if any *source code* file (not example or documentation) changed, recompile all examples
794+
if component_mode:
795+
for file in changed_files:
796+
if (is_source_file(file) or is_header_file(file)) and not file.endswith(".ino"):
797+
if file.startswith("cores/") or file.startswith("libraries/"):
798+
print("Component mode: file changed in cores/ or libraries/ - recompiling all IDF component examples", file=sys.stderr)
799+
all_examples = list_idf_component_examples()
800+
for example in all_examples:
801+
if example not in affected_sketches:
802+
affected_sketches.append(example)
803+
print(f"Total affected IDF component examples: {len(affected_sketches)}", file=sys.stderr)
804+
return
805+
793806
preprocess_changed_files(changed_files)
794807

795808
# Normal dependency-based analysis for non-critical changes

0 commit comments

Comments
 (0)