summaryrefslogtreecommitdiff
path: root/.github/workflows
diff options
context:
space:
mode:
authorhathach <[email protected]>2026-02-11 23:58:41 +0700
committerhathach <[email protected]>2026-02-11 23:58:41 +0700
commit30802a19c99ac8983d893782b380ced6747e6373 (patch)
tree2d81ef25959360067c18a3e050547080e6557104 /.github/workflows
parent8a8cea57806f729a49644217d5ee4ebb1ba7a1bb (diff)
parent2883403ed010c54c33a38c28358a4dd0c67d67c0 (diff)
Merge remote-tracking branch 'origin/master' into msc_stall
Diffstat (limited to '.github/workflows')
-rw-r--r--.github/workflows/build.yml45
-rwxr-xr-x.github/workflows/ci_set_matrix.py10
2 files changed, 22 insertions, 33 deletions
diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index e0c1d0a14..352875a9d 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -7,6 +7,7 @@ on:
pull_request:
release:
types: [ published ]
+
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
@@ -15,9 +16,9 @@ env:
HIL_JSON: test/hil/tinyusb.json
jobs:
- # Check if code paths changed (skip builds if doc-only)
+ # Check if the code changes and we need to run ci build
+ # Cannot use paths filter in the on-event since we want this workflow to run even when there are no code changes, to register the commit chain
check-paths:
- if: github.event_name == 'pull_request' || github.event_name == 'push'
runs-on: ubuntu-latest
permissions:
contents: read
@@ -46,13 +47,8 @@ jobs:
- '.github/workflows/ci_set_matrix.py'
set-matrix:
- needs: [check-paths]
- if: |
- always() && (
- github.event_name == 'release' ||
- github.event_name == 'workflow_dispatch' ||
- needs.check-paths.outputs.code_changed == 'true'
- )
+ needs: [ check-paths ]
+ if: needs.check-paths.outputs.code_changed == 'true'
runs-on: ubuntu-latest
outputs:
json: ${{ steps.set-matrix-json.outputs.matrix }}
@@ -197,7 +193,7 @@ jobs:
# Build Make/CMake on Windows/MacOS
# ---------------------------------------
build-os:
- needs: [check-paths]
+ needs: [ check-paths ]
if: needs.check-paths.outputs.code_changed == 'true'
uses: ./.github/workflows/build_util.yml
strategy:
@@ -215,8 +211,9 @@ jobs:
# Zephyr
# ---------------------------------------
zephyr:
- needs: [check-paths]
- if: needs.check-paths.outputs.code_changed == 'true'
+ needs: [ check-paths ]
+ # skip zephyr build due to failed build, fix later
+ if: false && needs.check-paths.outputs.code_changed == 'true'
runs-on: ubuntu-latest
steps:
- name: Checkout TinyUSB
@@ -238,10 +235,8 @@ jobs:
# Run on PR only (hil-tinyusb), hil-hfp only run on non-forked PR
# ---------------------------------------
hil-build:
- needs: [check-paths, set-matrix]
- if: |
- github.repository_owner == 'hathach' &&
- (github.event_name == 'workflow_dispatch' || needs.check-paths.outputs.code_changed == 'true')
+ needs: set-matrix
+ if: github.repository_owner == 'hathach'
uses: ./.github/workflows/build_util.yml
strategy:
fail-fast: false
@@ -260,10 +255,7 @@ jobs:
# self-hosted on local VM, for attached hardware checkout HIL_JSON
# ---------------------------------------
hil-tinyusb:
- needs: [check-paths, hil-build]
- if: |
- github.repository_owner == 'hathach' &&
- (github.event_name == 'release' || github.event_name == 'workflow_dispatch' || needs.check-paths.outputs.code_changed == 'true')
+ needs: hil-build
runs-on: [ self-hosted, X64, hathach, hardware-in-the-loop ]
steps:
- name: Get Skip Boards from previous run
@@ -303,11 +295,10 @@ jobs:
# Since IAR Token secret is not passed to forked PR, only build non-forked PR
# ---------------------------------------
hil-hfp:
- needs: [check-paths]
+ needs: [ check-paths ]
if: |
github.repository_owner == 'hathach' &&
- github.event.pull_request.head.repo.fork == false &&
- (github.event_name == 'release' || github.event_name == 'workflow_dispatch' || needs.check-paths.outputs.code_changed == 'true')
+ !(github.event_name == 'pull_request' && github.event.pull_request.head.repo.fork == true)
runs-on: [ self-hosted, Linux, X64, hifiphile ]
env:
IAR_LMS_BEARER_TOKEN: ${{ secrets.IAR_LMS_BEARER_TOKEN }}
@@ -364,11 +355,9 @@ jobs:
secrets: inherit
membrowse-comment:
- needs: [check-paths, membrowse]
- if: >
- always() &&
- github.event_name == 'pull_request' &&
- needs.check-paths.outputs.code_changed == 'true'
+ needs: membrowse
+ # skip membrowse comment since it is too verbal
+ if: false && github.event_name == 'pull_request'
runs-on: ubuntu-latest
permissions:
contents: read
diff --git a/.github/workflows/ci_set_matrix.py b/.github/workflows/ci_set_matrix.py
index 9ab08601d..05a48b6c9 100755
--- a/.github/workflows/ci_set_matrix.py
+++ b/.github/workflows/ci_set_matrix.py
@@ -15,8 +15,8 @@ toolchain_list = [
# family: [supported toolchain]
family_list = {
- "at32f45x at32f402_405 at32f403a_407 at32f413 at32f415 at32f423 at32f425 at32f435_437 broadcom_32bit da1469x": [
- "arm-gcc"],
+ "at32f45x at32f402_405 at32f403a_407 at32f413 at32f415 at32f423 at32f425 at32f435_437": ["arm-gcc"],
+ "broadcom_32bit da1469x": ["arm-gcc"],
"broadcom_64bit": ["aarch64-gcc"],
"ch32v10x ch32v20x ch32v30x fomu gd32vf103 hpmicro": ["riscv-gcc"],
"imxrt": ["arm-gcc", "arm-clang"],
@@ -38,9 +38,9 @@ family_list = {
"stm32h7": ["arm-gcc", "arm-clang", "arm-iar"],
"stm32h7rs stm32l0 stm32l4": ["arm-gcc", "arm-clang", "arm-iar"],
"stm32n6": ["arm-gcc"],
- "stm32u0 stm32wb stm32wba": ["arm-gcc", "arm-clang", "arm-iar"],
- "stm32u5": ["arm-gcc", "arm-clang", "arm-iar"],
- "-bespressif_s2_devkitc": ["esp-idf"],
+ "stm32u0 stm32u5": ["arm-gcc", "arm-clang", "arm-iar"],
+ "stm32wb stm32wba": ["arm-gcc", "arm-clang", "arm-iar"],
+ # "-bespressif_s2_devkitc": ["esp-idf"],
# S3, P4 will be built by hil test
# "-bespressif_s3_devkitm": ["esp-idf"],
# "-bespressif_p4_function_ev": ["esp-idf"],