Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 4 additions & 11 deletions .github/workflows/main_matrix.yml
Original file line number Diff line number Diff line change
Expand Up @@ -52,12 +52,6 @@ permissions: read-all

jobs:
setup:
strategy:
fail-fast: true
matrix:
arch:
- all
- check
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@v7
Expand All @@ -72,16 +66,15 @@ jobs:
# PRs and (for now) merge_group builds use the narrowed --level pr board
# subset. Full-matrix builds run on push / schedule / workflow_dispatch.
if [[ "$GITHUB_EVENT_NAME" == "pull_request" || "$GITHUB_EVENT_NAME" == "merge_group" ]]; then
TARGETS=$(./bin/generate_ci_matrix.py ${{matrix.arch}} --level pr)
TARGETS=$(./bin/generate_ci_matrix.py all --level pr)
else
TARGETS=$(./bin/generate_ci_matrix.py ${{matrix.arch}})
TARGETS=$(./bin/generate_ci_matrix.py all)
fi
echo "Name: $GITHUB_REF_NAME Base: $GITHUB_BASE_REF Ref: $GITHUB_REF"
echo "${{matrix.arch}}=$TARGETS" >> $GITHUB_OUTPUT
echo "all=$TARGETS" >> $GITHUB_OUTPUT
echo "$TARGETS" >> $GITHUB_STEP_SUMMARY
outputs:
all: ${{ steps.jsonStep.outputs.all }}
check: ${{ steps.jsonStep.outputs.check }}

version:
runs-on: ubuntu-latest
Expand All @@ -103,7 +96,7 @@ jobs:
strategy:
fail-fast: false
matrix:
check: ${{ fromJson(needs.setup.outputs.check) }}
check: ${{ fromJson(needs.setup.outputs.all) }}
# Runs on GitHub-hosted runners so checks don't compete with builds for the
# self-hosted 'arctastic' pool (which builds use).
runs-on: ubuntu-latest
Expand Down
34 changes: 12 additions & 22 deletions bin/generate_ci_matrix.py
Original file line number Diff line number Diff line change
Expand Up @@ -60,31 +60,21 @@
env = {
"ci": {"board": pio_env, "platform": env_platform},
"board_level": board_level,
"board_check": cfg.get(f"env:{pio_env}", "board_check", default="false").strip().lower() == "true",
}
all_envs.append(env)

# Filter outputs based on options
# Check is mutually exclusive with other options (except 'pr')
if "check" in args.platform:
for env in all_envs:
if env["board_check"]:
# '--level pr' narrows to the PR subset; otherwise check every level
if "pr" not in args.level or env["board_level"] == "pr":
outlist.append(env["ci"])
# Filter (non-check) builds by platform
else:
for env in all_envs:
if args.platform == env["ci"]["platform"] or args.platform == "all":
# Always include board_level = 'pr'
if env["board_level"] == "pr":
outlist.append(env["ci"])
# Include board_level = 'extra' when requested
elif "extra" in args.level and env["board_level"] == "extra":
outlist.append(env["ci"])
# Include board_level = 'release' unless narrowed to the PR subset
elif "pr" not in args.level and env["board_level"] == "release":
outlist.append(env["ci"])
# Filter builds by platform
for env in all_envs:
if args.platform == env["ci"]["platform"] or args.platform == "all":
# Always include board_level = 'pr'
if env["board_level"] == "pr":
outlist.append(env["ci"])
# Include board_level = 'extra' when requested
elif "extra" in args.level and env["board_level"] == "extra":
outlist.append(env["ci"])
# Include board_level = 'release' unless narrowed to the PR subset
elif "pr" not in args.level and env["board_level"] == "release":
outlist.append(env["ci"])
Comment thread
coderabbitai[bot] marked this conversation as resolved.

# Return as a JSON list
print(json.dumps(outlist))
1 change: 0 additions & 1 deletion variants/esp32/diy/v1/platformio.ini
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,6 @@ custom_meshtastic_tags = DIY
extends = esp32_base
board_level = release
board = esp32doit-devkit-v1
board_check = true
build_flags =
${esp32_base.build_flags}
-D DIY_V1
Expand Down
1 change: 0 additions & 1 deletion variants/esp32/m5stack_coreink/platformio.ini
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@
extends = esp32_base
board_level = release
board = m5stack-coreink
board_check = true
build_src_filter =
${esp32_base.build_src_filter}
build_flags =
Expand Down
1 change: 0 additions & 1 deletion variants/esp32/rak11200/platformio.ini
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,6 @@ custom_meshtastic_tags = RAK
extends = esp32_base
board_level = release
board = wiscore_rak11200
board_check = true
build_flags =
${esp32_base.build_flags}
-D RAK_11200
Expand Down
1 change: 0 additions & 1 deletion variants/esp32/tbeam/platformio.ini
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,6 @@ extends = esp32_base
board_level = release
board = ttgo-tbeam

board_check = true
build_flags = ${esp32_base.build_flags}
-D TBEAM_V10
-I variants/esp32/tbeam
Expand Down
1 change: 0 additions & 1 deletion variants/esp32/tlora_v2_1_16/platformio.ini
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,6 @@ custom_meshtastic_tags = LilyGo
extends = esp32_base
board_level = release
board = ttgo-lora32-v21
board_check = true
build_flags =
${esp32_base.build_flags} -D TLORA_V2_1_16 -I variants/esp32/tlora_v2_1_16
upload_speed = 115200
Expand Down
1 change: 0 additions & 1 deletion variants/esp32s2/nugget_s2_lora/platformio.ini
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@
extends = esp32s2_base
board = lolin_s2_mini
board_level = extra
board_check = true
build_flags =
${esp32s2_base.build_flags}
-D PRIVATE_HW
Expand Down
1 change: 0 additions & 1 deletion variants/esp32s3/elecrow_panel/platformio.ini
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
[crowpanel_base]
extends = esp32s3_base
board = crowpanel
board_check = true
upload_protocol = esptool
board_build.partitions = default_16MB.csv ; must be here for some reason, board.json is not enough !?
build_flags = ${esp32s3_base.build_flags} -Os
Expand Down
1 change: 0 additions & 1 deletion variants/esp32s3/hackaday-communicator/platformio.ini
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,6 @@
extends = esp32s3_base
board_level = release
board = hackaday-communicator
board_check = true
board_build.partitions = default_16MB.csv
upload_protocol = esptool

Expand Down
1 change: 0 additions & 1 deletion variants/esp32s3/heltec_capsule_sensor_v3/platformio.ini
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@
extends = esp32s3_base
board_level = release
board = heltec_wifi_lora_32_V3
board_check = true
board_build.partitions = default_8MB.csv
build_flags =
${esp32s3_base.build_flags} -I variants/esp32s3/heltec_capsule_sensor_v3
Expand Down
1 change: 0 additions & 1 deletion variants/esp32s3/heltec_sensor_hub/platformio.ini
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@
extends = esp32s3_base
board_level = release
board = heltec_wifi_lora_32_V3
board_check = true

build_flags =
${esp32s3_base.build_flags}
Expand Down
1 change: 0 additions & 1 deletion variants/esp32s3/heltec_v3/platformio.ini
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,6 @@ custom_meshtastic_partition_scheme = 8MB
extends = esp32s3_base
board = heltec_wifi_lora_32_V3
board_level = pr
board_check = true
board_build.partitions = default_8MB.csv
build_flags =
${esp32s3_base.build_flags}
Expand Down
1 change: 0 additions & 1 deletion variants/esp32s3/heltec_v4/platformio.ini
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
[heltec_v4_base]
extends = esp32s3_base
board = heltec_v4
board_check = true
board_build.partitions = default_16MB.csv
build_flags =
${esp32s3_base.build_flags}
Expand Down
1 change: 0 additions & 1 deletion variants/esp32s3/heltec_v4_r8/platformio.ini
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
[heltec_v4_r8_base]
extends = esp32s3_base
board = heltec_v4_r8
board_check = true
board_build.partitions = default_16MB.csv
build_flags =
${esp32s3_base.build_flags}
Expand Down
1 change: 0 additions & 1 deletion variants/esp32s3/icarus/platformio.ini
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@
extends = esp32s3_base
board = icarus
board_level = extra
board_check = true
board_build.mcu = esp32s3
board_build.partitions = default_8MB.csv
upload_protocol = esptool
Expand Down
1 change: 0 additions & 1 deletion variants/esp32s3/m5stack_cardputer_adv/platformio.ini
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,6 @@
extends = esp32s3_base
board_level = release
board = m5stack-stamps3
board_check = true
board_build.partitions = default_8MB.csv
upload_protocol = esptool
build_flags =
Expand Down
1 change: 0 additions & 1 deletion variants/esp32s3/m5stack_cores3/platformio.ini
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,6 @@
extends = esp32s3_base
board_level = release
board = m5stack-cores3
board_check = true
board_build.partitions = default_16MB.csv
upload_protocol = esptool
build_flags =
Expand Down
2 changes: 0 additions & 2 deletions variants/esp32s3/mini-epaper-s3/platformio.ini
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,6 @@ custom_meshtastic_has_mui = false
extends = esp32s3_base
board_level = release
board = mini-epaper-s3
board_check = true
upload_protocol = esptool

build_flags =
Expand All @@ -40,7 +39,6 @@ lib_deps =
extends = esp32s3_base, inkhud
board_level = release
board = mini-epaper-s3
board_check = true
upload_protocol = esptool
build_src_filter =
${esp32s3_base.build_src_filter}
Expand Down
1 change: 0 additions & 1 deletion variants/esp32s3/picomputer-s3/platformio.ini
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,6 @@ custom_meshtastic_has_mui = true
extends = esp32s3_base
board_level = release
board = bpi_picow_esp32_s3
board_check = true
board_build.partitions = partition-table-8MB.csv
;OpenOCD flash method
;upload_protocol = esp-builtin
Expand Down
1 change: 0 additions & 1 deletion variants/esp32s3/rak3312/platformio.ini
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,6 @@ custom_meshtastic_has_mui = false
extends = esp32s3_base
board_level = release
board = wiscore_rak3312
board_check = true
upload_protocol = esptool

build_flags =
Expand Down
1 change: 0 additions & 1 deletion variants/esp32s3/rak_wismesh_tap_v2/platformio.ini
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,6 @@ custom_meshtastic_has_mui = true
extends = esp32s3_base
board_level = release
board = wiscore_rak3312
board_check = true
upload_protocol = esptool
board_build.partitions = default_16MB.csv

Expand Down
2 changes: 0 additions & 2 deletions variants/esp32s3/seeed-sensecap-indicator/platformio.ini
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,6 @@ platform_packages =

board = seeed-sensecap-indicator
board_level = release
board_check = true
board_build.partitions = partition-table-8MB.csv
upload_protocol = esptool

Expand All @@ -45,7 +44,6 @@ lib_deps = ${esp32s3_base.lib_deps}
[env:seeed-sensecap-indicator-tft]
extends = env:seeed-sensecap-indicator
board_level = pr
board_check = true
upload_speed = 921600

build_flags =
Expand Down
1 change: 0 additions & 1 deletion variants/esp32s3/seeed_xiao_s3/platformio.ini
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,6 @@ custom_meshtastic_partition_scheme = 8MB
extends = esp32s3_base
board_level = release
board = seeed-xiao-s3
board_check = true
board_build.partitions = default_8MB.csv
upload_protocol = esptool
upload_speed = 921600
Expand Down
1 change: 0 additions & 1 deletion variants/esp32s3/station-g2/platformio.ini
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,6 @@ custom_meshtastic_partition_scheme = 16MB
extends = esp32s3_base
board_level = release
board = station-g2
board_check = true
board_build.partitions = default_16MB.csv
board_build.mcu = esp32s3
upload_protocol = esptool
Expand Down
1 change: 0 additions & 1 deletion variants/esp32s3/station-g3/platformio.ini
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,6 @@ custom_meshtastic_partition_scheme = 16MB
extends = esp32s3_base
board_level = release
board = station-g3
board_check = true
board_build.partitions = default_16MB.csv
board_build.mcu = esp32s3
upload_protocol = esptool
Expand Down
1 change: 0 additions & 1 deletion variants/esp32s3/t-beam-1w/platformio.ini
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,6 @@ extends = esp32s3_base
board_level = release
board = t-beam-1w
board_build.partitions = default_8MB.csv
board_check = true

lib_deps =
${esp32s3_base.lib_deps}
Expand Down
1 change: 0 additions & 1 deletion variants/esp32s3/t-beam-bpf/platformio.ini
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,6 @@ extends = esp32s3_base
board_level = release
board = t-beam-bpf
board_build.partitions = default_16MB.csv
board_check = true

lib_deps =
${esp32s3_base.lib_deps}
Expand Down
1 change: 0 additions & 1 deletion variants/esp32s3/t-deck-pro-v1_1/platformio.ini
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,6 @@ custom_meshtastic_partition_scheme = 16MB
extends = esp32s3_base
board_level = release
board = t-deck-pro
board_check = true
upload_protocol = esptool

build_flags =
Expand Down
1 change: 0 additions & 1 deletion variants/esp32s3/t-deck-pro/platformio.ini
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,6 @@ custom_meshtastic_has_mui = false
extends = esp32s3_base
board_level = release
board = t-deck-pro
board_check = true
upload_protocol = esptool

build_src_filter =
Expand Down
1 change: 0 additions & 1 deletion variants/esp32s3/t-deck/platformio.ini
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,6 @@ custom_meshtastic_has_mui = true
extends = esp32s3_base
board_level = release
board = t-deck
board_check = true
board_build.partitions = default_16MB.csv
upload_protocol = esptool

Expand Down
1 change: 0 additions & 1 deletion variants/esp32s3/t-eth-elite/platformio.ini
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@
extends = esp32s3_base
board_level = release
board = esp32s3box
board_check = true
board_build.partitions = default_16MB.csv
build_flags =
${esp32s3_base.build_flags}
Expand Down
1 change: 0 additions & 1 deletion variants/esp32s3/t-watch-s3/platformio.ini
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,6 @@ custom_meshtastic_partition_scheme = 8MB
extends = esp32s3_base
board_level = release
board = t-watch-s3
board_check = true
board_build.partitions = default_16MB.csv
upload_protocol = esptool

Expand Down
2 changes: 0 additions & 2 deletions variants/esp32s3/t5s3_epaper/platformio.ini
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@
extends = esp32s3_base
board = t5-epaper-s3
board_build.partitions = default_16MB.csv
board_check = true
upload_protocol = esptool
build_flags = -fno-strict-aliasing
${esp32s3_base.build_flags}
Expand Down Expand Up @@ -39,7 +38,6 @@ custom_sdkconfig =
[env:t5s3_epaper_inkhud]
extends = t5s3_epaper_base, inkhud
board_level = extra
board_check = true
build_flags =
${t5s3_epaper_base.build_flags}
${inkhud.build_flags}
Expand Down
1 change: 0 additions & 1 deletion variants/esp32s3/tbeam-s3-core/platformio.ini
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,6 @@ extends = esp32s3_base
board_level = release
board = tbeam-s3-core
board_build.partitions = default_8MB.csv
board_check = true

lib_deps =
${esp32s3_base.lib_deps}
Expand Down
1 change: 0 additions & 1 deletion variants/esp32s3/tlora-pager/platformio.ini
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,6 @@ custom_meshtastic_has_mui = true
extends = esp32s3_base
board_level = release
board = t-deck-pro ; same as T-Deck Pro
board_check = true
board_build.partitions = default_16MB.csv
upload_protocol = esptool

Expand Down
2 changes: 0 additions & 2 deletions variants/esp32s3/tlora_t3s3_epaper/platformio.ini
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,6 @@ custom_meshtastic_has_ink_hud = true
extends = esp32s3_base
board_level = release
board = tlora-t3s3-v1
board_check = true
board_build.partitions = partition-table-t3s3.csv
upload_protocol = esptool

Expand Down Expand Up @@ -42,7 +41,6 @@ lib_deps =
extends = esp32s3_base, inkhud
board_level = release
board = tlora-t3s3-v1
board_check = true
board_build.partitions = partition-table-t3s3.csv
upload_protocol = esptool
custom_sdkconfig =
Expand Down
Loading
Loading