summaryrefslogtreecommitdiff
path: root/.github/workflows/build.yml
AgeCommit message (Collapse)Author
2026-06-22ci: post HIL report comment from workflow_run so it works on forked PRs (#3723)Ha Thach
* ci: post HIL report comment from workflow_run so it works on forked PRs
2026-06-16hil: enable nanoch32v203 in CI with fsdev + usbfs variants (#3707)Ha Thach
* hil: enable nanoch32v203 in CI with fsdev + usbfs variants nanoch32v203 was parked in boards-skip; move it into the active pool now that the board is wired to the ci.lan rig. Cover both USB device IPs as build variants: - nanoch32v203-fsdev: RHPORT_DEVICE=0 (USBD / stm32 FSDev IP) - nanoch32v203-usbfs: RHPORT_DEVICE=1 (WCH USBFS IP)
2026-06-11HIL: replace build.flags_on with named build variants (#3687)Ha Thach
* test/hil: replace build.flags_on with named variant schema Boards declare build variants as `variant: [{name, flags}]` instead of `build.flags_on`. The variant `name` is the build dir (cmake-build-<name>) and the HIL report row; `flags` is the raw CFLAGS string (-D...=1) injected via CFLAGS_CLI. No `variant` => a single build named after the board. - build.py: --build-name <name> (dir) + --cflag=<token> (raw CFLAGS, repeatable, =form survives the matrix's shell word-splitting); drop -f1/CFLAGS wrapping. - hil_ci_set_matrix.py: emit one build arg per variant. - hil_test.py: iterate variants; report row + build dir = variant name. - hil_ci.sh: copy all cmake-build-<board>* dirs for -b runs. - get_deps.py: accept (ignore) --build-name/--cflag from matrix args. - tinyusb.json: migrate all 6 flags_on boards to variant. * board_test: park CI build with busy spin instead of wfe
2026-06-08ci: demote sticky-comment report headings to h2; rename HIL reporthathach
The Size Difference Report and HIL comments rendered their titles at h1, which is oversized inside a PR comment. Use h2 for both titles (with subsections demoted to h3 to keep the hierarchy), and rename the HIL comment from "HIL test results" to "Hardware-in-the-loop (HIL) Test Report" for consistency. Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]>
2026-06-08ci: include hil-hfp-iar (IAR) results in the HIL PR commenthathach
hil-hfp-iar runs hil_test.py on hfp.json built with IAR on its own rig. Upload its report as the hil-report-hfp-iar artifact and add the job to the hil-report combine job's needs, so the sticky comment shows a third table for the IAR rig alongside tinyusb.json and hfp.json (gcc). The combine gate now runs if either HIL job produced results. Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]>
2026-06-08test/hil: accumulate HIL report across re-runs; post as sticky PR commenthathach
hil_test.py persists results in a hil_report.json sidecar and regenerates hil_report.md from it. A full run starts fresh; a re-run (--skip-board / -bt, i.e. the .skip file) merges into the existing report so already-passed boards/tests are preserved while only re-run cells update. The report dir is configurable via HIL_REPORT_DIR. build.yml: each HIL rig writes the report to a workspace-sibling dir that survives the per-attempt workspace clean, and uploads it as an artifact. A new hil-report job merges the rigs' reports into one sticky PR comment (marocchino) with one table per rig. Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]>
2026-06-05ci: carry metrics baseline forward on no-code-change pushes (#3678)Ha Thach
* ci: carry metrics baseline forward on no-code-change pushes The code-metrics job is gated on code_changed and only uploads the metrics-tinyusb artifact on push, so a workflow/docs-only push to master (e.g. removing an unrelated workflow) leaves the latest master Build run without a baseline. PRs download the baseline from the latest master run, so the size comparison then finds nothing and silently falls back to absolute sizes. Add a small metrics-carry-forward job that, on a non-code-change push, downloads the previous metrics-tinyusb artifact and re-publishes it, so the latest run always carries a usable baseline. Carry-forward runs re-upload too, so the baseline chains across consecutive no-code pushes (bounded by artifact retention).
2026-05-12support map filesMichael Rogov Papernov
2026-05-05try to fix CI stuckZixun LI
Co-authored-by: Copilot <[email protected]> Signed-off-by: Zixun LI <[email protected]>
2026-04-29clean uphathach
2026-04-26change job nameHiFiPhile
Co-authored-by: Copilot <[email protected]> Signed-off-by: HiFiPhile <[email protected]>
2026-04-26run hil_hfp on gcc buildHiFiPhile
Co-authored-by: Copilot <[email protected]> Signed-off-by: HiFiPhile <[email protected]>
2026-03-31dont cancel build on merge to masterMichael Rogov Papernov
2026-03-18Update several actions to latest versionhathach
2026-03-13add ft9xx-gcc toolchain support to CIhathach
2026-03-12download metrics in case hil failedhathach
2026-03-12also update metrics.json for prhathach
2026-03-07update hil test: remove unused ctypes, add fallback for skip boardshathach
2026-02-12clean uphathach
2026-02-12fix cihathach
2026-02-11add build target argument to improve flexibility of build scripts and workflowshathach
membrowse-upload upload with --identical if elf file does not exist
2026-02-10add membrowse-upload target and use it in ci after buildhathach
2026-02-09Update membrowse job to run on all pushes for commit chain trackingcopilot-swe-agent[bot]
Co-authored-by: hathach <[email protected]>
2026-02-07Update .github/workflows/build.ymlHa Thach
Co-authored-by: Copilot <[email protected]>
2026-02-07add back check-path job to path filter, make sure workflow always run to ↵hathach
register commit chain with membrowse
2026-02-06set folder property for flash tool targetshathach
update build.yml only build with pr and push-to-master
2026-02-06skip zephyr and membrowse steps temporarilyhathach
2026-01-24restructure targets fileMichael Rogov Papernov
2026-01-16Integrate MemBrowseMichael Rogov Papernov
2026-01-14correct dual port hil asserthathach
2025-12-13upload metrics.json and metrics compare to release page (#3409)Ha Thach
* upload metrics.json and metrics compare to release page * Adjust workflow comment handling for forks
2025-12-12post pr comment anywayhathach
2025-12-11separate metric comment into its own workflow in order to work with forked PRhathach
2025-12-10update metrics to support bloaty csvhathach
2025-12-05also render unchange table (#3390)Ha Thach
* also render unchange table * run metrics with circleci (full all boards build)
2025-12-05Run CI build with fixed set of boards (#3389)Ha Thach
* run cmake ci build on github with a fixed set of board to keep the size stable * Size Difference Report contain major >1% and minor <1& table
2025-12-04fine tune ci to build more with circleci (#3386)Ha Thach
* fine tune ci to build more with circleci * skip make for arm-iar, esp-idf * skip make + clang for circleci since llvm-objcopy got killed due to memory issue.
2025-12-03clean uphathach
2025-12-03upload metrics.json and aggregate code metrics, post metrics commenthathach
fine tune ci matrix run
2025-12-03upload metrics.json and aggregate code metrics, fine tune ci matrix runhathach
2025-12-03upload metrics.json, test cihathach
2025-11-29change armgcc setup to manual download due to issue with action (#3377)Ha Thach
* change armgcc setup to manual download due to issue with action * build windows, macos with cmake as well
2025-10-24add pvs-studio analyze to cihathach
2025-10-13fix build with west zephyrhathach
2025-10-03hil simplify skip board from previous runhathach
2025-10-02use cache to store skip board in hil cihathach
2025-10-02HIL add timeout for opening mtp devicehathach
2025-10-01hil tinyusb always checkoutt/download artifactshathach
2025-10-01test mtp with hilhathach
2025-07-09only clean/checkout/download artifacts on first attempthathach