Skip to content

Commit c706fd1

Browse files
committed
Merge branch 'ci/fixes'
2 parents cf02df0 + db0d0c6 commit c706fd1

File tree

2 files changed

+29
-27
lines changed

2 files changed

+29
-27
lines changed

.github/scripts/tests_matrix.sh

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -3,24 +3,24 @@
33
# QEMU is disabled for now
44
qemu_enabled="false"
55

6-
build_types="'validation'"
7-
hw_types="'validation'"
8-
wokwi_types="'validation'"
9-
qemu_types="'validation'"
6+
build_types='"validation"'
7+
hw_types='"validation"'
8+
wokwi_types='"validation"'
9+
qemu_types='"validation"'
1010

1111
if [[ $IS_PR != 'true' ]] || [[ $PERFORMANCE_ENABLED == 'true' ]]; then
12-
build_types+=",'performance'"
13-
hw_types+=",'performance'"
14-
#wokwi_types+=",'performance'"
15-
#qemu_types+=",'performance'"
12+
build_types+=',"performance"'
13+
hw_types+=',"performance"'
14+
#wokwi_types+=',"performance"'
15+
#qemu_types+=',"performance"'
1616
fi
1717

18-
hw_targets="'esp32','esp32s2','esp32s3','esp32c3','esp32c5','esp32c6','esp32h2','esp32p4'"
19-
wokwi_targets="'esp32','esp32s2','esp32s3','esp32c3','esp32c6','esp32h2','esp32p4'"
20-
qemu_targets="'esp32','esp32c3'"
18+
hw_targets='"esp32","esp32s2","esp32s3","esp32c3","esp32c5","esp32c6","esp32h2","esp32p4"'
19+
wokwi_targets='"esp32","esp32s2","esp32s3","esp32c3","esp32c6","esp32h2","esp32p4"'
20+
qemu_targets='"esp32","esp32c3"'
2121

2222
# The build targets should be the sum of the hw, wokwi and qemu targets without duplicates
23-
build_targets=$(echo "$hw_targets,$wokwi_targets,$qemu_targets" | tr ',' '\n' | sort -u | tr '\n' ',')
23+
build_targets=$(echo "$hw_targets,$wokwi_targets,$qemu_targets" | tr ',' '\n' | sort -u | tr '\n' ',' | sed 's/,$//')
2424

2525
mkdir -p info
2626

.gitlab/scripts/gen_hw_jobs.py

Lines changed: 17 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -262,18 +262,20 @@ def list_project_runners() -> list[dict]:
262262
# Project-scoped listing might be restricted for JOB-TOKEN in some instances.
263263
# Return what we have (likely nothing) and let caller decide.
264264
if status == 403:
265-
sys.stderr.write(f"\n[ERROR] 403 Forbidden when listing project runners\n")
265+
sys.stderr.write("\n[ERROR] 403 Forbidden when listing project runners\n")
266266
sys.stderr.write(f" Project ID: {project_id}\n")
267267
sys.stderr.write(f" Authentication: {key if key else 'None'}\n")
268-
sys.stderr.write(f" Endpoint: projects/{project_id}/runners\n\n")
269-
sys.stderr.write(f"Required permissions:\n")
270-
sys.stderr.write(f" - Token scope: 'api' (you likely have this)\n")
271-
sys.stderr.write(f" - Project role: Maintainer or Owner (you may be missing this)\n\n")
272-
sys.stderr.write(f"Solutions:\n")
273-
sys.stderr.write(f" 1. Ensure the token owner has Maintainer/Owner role on project {project_id}\n")
274-
sys.stderr.write(f" 2. Use a Group Access Token if available (has higher privileges)\n")
275-
sys.stderr.write(f" 3. Set environment variable: ASSUME_TAGGED_GROUPS_MISSING=0\n")
276-
sys.stderr.write(f" (This will skip runner enumeration and schedule all groups)\n\n")
268+
sys.stderr.write(" Endpoint: projects/{project_id}/runners\n\n")
269+
270+
sys.stderr.write("Required permissions:\n")
271+
sys.stderr.write(" - Token scope: 'api' (you likely have this)\n")
272+
sys.stderr.write(" - Project role: Maintainer or Owner (you may be missing this)\n\n")
273+
274+
sys.stderr.write("Solutions:\n")
275+
sys.stderr.write(" 1. Ensure the token owner has Maintainer/Owner role on project {project_id}\n")
276+
sys.stderr.write(" 2. Use a Group Access Token if available (has higher privileges)\n")
277+
sys.stderr.write(" 3. Set environment variable: ASSUME_TAGGED_GROUPS_MISSING=0\n")
278+
sys.stderr.write(" (This will skip runner enumeration and schedule all groups)\n\n")
277279
break
278280
runners.extend(x for x in obj if isinstance(x, dict))
279281
if len(obj) < per_page:
@@ -417,7 +419,7 @@ def main():
417419
# Track skipped groups for reporting
418420
skipped_groups: list[dict] = []
419421

420-
print(f"\n=== Test Group Scheduling ===")
422+
print("\n=== Test Group Scheduling ===")
421423
for (chip, tagset, test_type), test_dirs in group_map.items():
422424
tag_list = sorted(tagset)
423425
# Build name suffix excluding the SOC itself to avoid duplication
@@ -430,9 +432,9 @@ def main():
430432
print(f" Required tags: {', '.join(tag_list)}")
431433
print(f" Tests: {len(test_dirs)}")
432434
if can_schedule:
433-
print(f" ✓ Runner found - scheduling")
435+
print(" ✓ Runner found - scheduling")
434436
else:
435-
print(f" ✗ NO RUNNER FOUND - skipping")
437+
print(" ✗ NO RUNNER FOUND - skipping")
436438

437439
if can_schedule:
438440
job_name = f"hw-{chip}-{test_type}-{tag_suffix}"[:255]
@@ -462,11 +464,11 @@ def main():
462464
)
463465

464466
# Print summary
465-
print(f"\n=== Summary ===")
467+
print("\n=== Summary ===")
466468
print(f" Scheduled groups: {len(jobs_entries)}")
467469
print(f" Skipped groups (no runner): {len(skipped_groups)}")
468470
if skipped_groups:
469-
print(f"\n Skipped group details:")
471+
print("\n Skipped group details:")
470472
for sg in skipped_groups:
471473
chip = sg.get("chip")
472474
test_type = sg.get("test_type")

0 commit comments

Comments
 (0)