Skip to content

Commit

Permalink
CI: Skip half of RISC-V, Xtensa and Simulator targets when a Complex …
Browse files Browse the repository at this point in the history
…PR is created / updated

When we submit or update a Complex PR that affects All Architectures (Arm, RISC-V, Xtensa, etc): CI Workflow shall run only half the jobs for RISC-V, Xtensa and Simulator:
- `risc-v-01` to `03`
- `xtensa-01`
- `sim-01`

When the Complex PR is Merged: CI Workflow will still run all jobs for RISC-V, Xtensa and Simulator:
- `risc-v-01` to `06`
- `xtensa-01` to `02`
- `sim-01` to `02`

Simple PRs with One Single Arch / Board will build the same way as before:
- `risc-v-01` to `06`
- `xtensa-01` to `02`
- `sim-01` to `02`

We hope to lower drastically our usage of GitHub Runners before the ASF Deadline, as explained here: #14376
  • Loading branch information
lupyuen committed Oct 18, 2024
1 parent 8ecca52 commit a94c099
Showing 1 changed file with 12 additions and 4 deletions.
16 changes: 12 additions & 4 deletions .github/workflows/arch.yml
Original file line number Diff line number Diff line change
Expand Up @@ -160,13 +160,21 @@ jobs:
# If Not a Simple PR: Build all targets
if [[ "$quit" == "1" ]]; then
# If PR was Created or Modified: Exclude arm-08 to arm-14
# If PR was Created or Modified: Exclude some boards
pr=${{github.event.pull_request.number}}
if [[ "$pr" != "" ]]; then
echo "Excluding arm-08 to arm-14"
boards=$(
echo "Excluding arm-08..14, risc-v-04..06, sim-02, xtensa-02"
boards=$(
echo '${{ inputs.boards }}' |
jq --compact-output 'map(select(test("arm-0[8-9]") == false and test("arm-1.+") == false))'
jq --compact-output \
'map(
select(
test("arm-0[8-9]") == false and test("arm-1.") == false and
test("risc-v-0[4-9]") == false and
test("sim-0[2-9]") == false and
test("xtensa-0[2-9]") == false
)
)'
)
fi
echo "selected_builds=$boards" | tee -a $GITHUB_OUTPUT
Expand Down

0 comments on commit a94c099

Please sign in to comment.