Take control of our PRs! (#7445)
Some checks are pending
CI / setup (check) (push) Waiting to run
CI / setup (esp32) (push) Waiting to run
CI / setup (esp32c3) (push) Waiting to run
CI / setup (esp32c6) (push) Waiting to run
CI / setup (esp32s3) (push) Waiting to run
CI / setup (nrf52840) (push) Waiting to run
CI / setup (rp2040) (push) Waiting to run
CI / setup (stm32) (push) Waiting to run
CI / version (push) Waiting to run
CI / check (push) Blocked by required conditions
CI / build-esp32 (push) Blocked by required conditions
CI / build-esp32s3 (push) Blocked by required conditions
CI / build-esp32c3 (push) Blocked by required conditions
CI / build-esp32c6 (push) Blocked by required conditions
CI / build-nrf52840 (push) Blocked by required conditions
CI / build-rpi2040 (push) Blocked by required conditions
CI / build-stm32 (push) Blocked by required conditions
CI / build-debian-src (push) Waiting to run
CI / package-pio-deps-native-tft (push) Waiting to run
CI / test-native (push) Waiting to run
CI / docker-deb-amd64 (push) Waiting to run
CI / docker-deb-amd64-tft (push) Waiting to run
CI / docker-alp-amd64 (push) Waiting to run
CI / docker-alp-amd64-tft (push) Waiting to run
CI / docker-deb-arm64 (push) Waiting to run
CI / docker-deb-armv7 (push) Waiting to run
CI / gather-artifacts (esp32) (push) Blocked by required conditions
CI / gather-artifacts (esp32c3) (push) Blocked by required conditions
CI / gather-artifacts (esp32c6) (push) Blocked by required conditions
CI / gather-artifacts (esp32s3) (push) Blocked by required conditions
CI / gather-artifacts (nrf52840) (push) Blocked by required conditions
CI / gather-artifacts (rp2040) (push) Blocked by required conditions
CI / gather-artifacts (stm32) (push) Blocked by required conditions
CI / release-artifacts (push) Blocked by required conditions
CI / release-firmware (esp32) (push) Blocked by required conditions
CI / release-firmware (esp32c3) (push) Blocked by required conditions
CI / release-firmware (esp32c6) (push) Blocked by required conditions
CI / release-firmware (esp32s3) (push) Blocked by required conditions
CI / release-firmware (nrf52840) (push) Blocked by required conditions
CI / release-firmware (rp2040) (push) Blocked by required conditions
CI / release-firmware (stm32) (push) Blocked by required conditions
CI / publish-firmware (push) Blocked by required conditions

This commit is contained in:
Austin 2025-07-24 07:13:23 -04:00 committed by GitHub
parent 66a831dfa8
commit 4f895f744b
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
27 changed files with 40 additions and 11 deletions

View File

@ -45,7 +45,7 @@ jobs:
if [[ "$GITHUB_HEAD_REF" == "" ]]; then if [[ "$GITHUB_HEAD_REF" == "" ]]; then
TARGETS=$(./bin/generate_ci_matrix.py ${{matrix.arch}}) TARGETS=$(./bin/generate_ci_matrix.py ${{matrix.arch}})
else else
TARGETS=$(./bin/generate_ci_matrix.py ${{matrix.arch}} quick) TARGETS=$(./bin/generate_ci_matrix.py ${{matrix.arch}} pr)
fi fi
echo "Name: $GITHUB_REF_NAME Base: $GITHUB_BASE_REF Ref: $GITHUB_REF Targets: $TARGETS" echo "Name: $GITHUB_REF_NAME Base: $GITHUB_BASE_REF Ref: $GITHUB_REF Targets: $TARGETS"
echo "${{matrix.arch}}=$(jq -cn --argjson environments "$TARGETS" '{board: $environments}')" >> $GITHUB_OUTPUT echo "${{matrix.arch}}=$(jq -cn --argjson environments "$TARGETS" '{board: $environments}')" >> $GITHUB_OUTPUT

View File

@ -45,24 +45,28 @@ for pio_env in pio_envs:
all_envs.append(env) all_envs.append(env)
# Filter outputs based on options # Filter outputs based on options
# Check is currently mutually exclusive with other options # Check is mutually exclusive with other options (except 'pr')
if "check" in options: if "check" in options:
for env in all_envs: for env in all_envs:
if env['board_check']: if env['board_check']:
outlist.append(env['name']) if "pr" in options:
if env['board_level'] == 'pr':
outlist.append(env['name'])
else:
outlist.append(env['name'])
# Filter (non-check) builds by platform # Filter (non-check) builds by platform
else: else:
for env in all_envs: for env in all_envs:
if options[0] == env['platform']: if options[0] == env['platform']:
# If no board level is specified, always include it # Always include board_level = 'pr'
if not env['board_level']: if env['board_level'] == 'pr':
outlist.append(env['name']) outlist.append(env['name'])
# Include `extra` boards when requested # Include board_level = 'extra' when requested
elif "extra" in options and env['board_level'] == "extra": elif "extra" in options and env['board_level'] == "extra":
outlist.append(env['name']) outlist.append(env['name'])
# If no board level is specified, include in release builds (not PR)
elif "pr" not in options and not env['board_level']:
outlist.append(env['name'])
# Return as a JSON list # Return as a JSON list
if ("quick" in options) and (len(outlist) > 3): print(json.dumps(outlist))
print(json.dumps(random.sample(outlist, 3)))
else:
print(json.dumps(outlist))

View File

@ -1,6 +1,7 @@
[env:rak11200] [env:rak11200]
extends = esp32_base extends = esp32_base
board = wiscore_rak11200 board = wiscore_rak11200
board_level = pr
board_check = true board_check = true
build_flags = build_flags =
${esp32_base.build_flags} ${esp32_base.build_flags}

View File

@ -2,6 +2,7 @@
[env:tbeam] [env:tbeam]
extends = esp32_base extends = esp32_base
board = ttgo-t-beam board = ttgo-t-beam
board_level = pr
board_check = true board_check = true
lib_deps = lib_deps =
${esp32_base.lib_deps} ${esp32_base.lib_deps}

View File

@ -1,6 +1,7 @@
[env:heltec-ht62-esp32c3-sx1262] [env:heltec-ht62-esp32c3-sx1262]
extends = esp32c3_base extends = esp32c3_base
board = esp32-c3-devkitm-1 board = esp32-c3-devkitm-1
board_level = pr
build_flags = build_flags =
${esp32_base.build_flags} ${esp32_base.build_flags}
-D HELTEC_HT62 -D HELTEC_HT62

View File

@ -1,6 +1,7 @@
[env:tlora-c6] [env:tlora-c6]
extends = esp32c6_base extends = esp32c6_base
board = esp32-c6-devkitm-1 board = esp32-c6-devkitm-1
board_level = pr
build_flags = build_flags =
${esp32c6_base.build_flags} ${esp32c6_base.build_flags}
-D TLORA_C6 -D TLORA_C6

View File

@ -98,6 +98,7 @@ build_flags =
[env:elecrow-adv-35-tft] [env:elecrow-adv-35-tft]
extends = crowpanel_small_esp32s3_base extends = crowpanel_small_esp32s3_base
board_level = pr
build_flags = build_flags =
${crowpanel_small_esp32s3_base.build_flags} ${crowpanel_small_esp32s3_base.build_flags}
-D LV_CACHE_DEF_SIZE=2097152 -D LV_CACHE_DEF_SIZE=2097152

View File

@ -1,6 +1,7 @@
[env:heltec-v3] [env:heltec-v3]
extends = esp32s3_base extends = esp32s3_base
board = heltec_wifi_lora_32_V3 board = heltec_wifi_lora_32_V3
board_level = pr
board_check = true board_check = true
board_build.partitions = default_8MB.csv board_build.partitions = default_8MB.csv
build_flags = build_flags =

View File

@ -24,6 +24,7 @@ upload_speed = 115200
[env:heltec-vision-master-e213-inkhud] [env:heltec-vision-master-e213-inkhud]
extends = esp32s3_base, inkhud extends = esp32s3_base, inkhud
board = heltec_vision_master_e213 board = heltec_vision_master_e213
board_level = pr
board_build.partitions = default_8MB.csv board_build.partitions = default_8MB.csv
build_src_filter = build_src_filter =
${esp32_base.build_src_filter} ${esp32_base.build_src_filter}

View File

@ -1,6 +1,7 @@
[env:rak3312] [env:rak3312]
extends = esp32s3_base extends = esp32s3_base
board = wiscore_rak3312 board = wiscore_rak3312
board_level = pr
board_check = true board_check = true
upload_protocol = esptool upload_protocol = esptool

View File

@ -31,7 +31,7 @@ lib_deps = ${esp32s3_base.lib_deps}
[env:seeed-sensecap-indicator-tft] [env:seeed-sensecap-indicator-tft]
extends = env:seeed-sensecap-indicator extends = env:seeed-sensecap-indicator
board_level = main board_level = pr
upload_speed = 460800 upload_speed = 460800
build_flags = build_flags =

View File

@ -1,6 +1,7 @@
[env:seeed-xiao-s3] [env:seeed-xiao-s3]
extends = esp32s3_base extends = esp32s3_base
board = seeed-xiao-s3 board = seeed-xiao-s3
board_level = pr
board_check = true board_check = true
board_build.partitions = default_8MB.csv board_build.partitions = default_8MB.csv
upload_protocol = esptool upload_protocol = esptool

View File

@ -1,6 +1,7 @@
[env:station-g2] [env:station-g2]
extends = esp32s3_base extends = esp32s3_base
board = station-g2 board = station-g2
board_level = pr
board_check = true board_check = true
board_build.partitions = default_16MB.csv board_build.partitions = default_16MB.csv
board_build.mcu = esp32s3 board_build.mcu = esp32s3

View File

@ -19,6 +19,7 @@ lib_deps = ${esp32s3_base.lib_deps}
[env:t-deck-tft] [env:t-deck-tft]
extends = env:t-deck extends = env:t-deck
board_level = pr
build_flags = build_flags =
${env:t-deck.build_flags} ${env:t-deck.build_flags}

View File

@ -1,6 +1,7 @@
[env:t-eth-elite] [env:t-eth-elite]
extends = esp32s3_base extends = esp32s3_base
board = esp32s3box board = esp32s3box
board_level = pr
board_check = true board_check = true
board_build.partitions = default_16MB.csv board_build.partitions = default_16MB.csv
build_flags = build_flags =

View File

@ -2,6 +2,7 @@
[env:heltec-mesh-node-t114] [env:heltec-mesh-node-t114]
extends = nrf52840_base extends = nrf52840_base
board = heltec_mesh_node_t114 board = heltec_mesh_node_t114
board_level = pr
debug_tool = jlink debug_tool = jlink
# add -DCFG_SYSVIEW if you want to use the Segger systemview tool for OS profiling. # add -DCFG_SYSVIEW if you want to use the Segger systemview tool for OS profiling.

View File

@ -2,6 +2,7 @@
[env:rak4631] [env:rak4631]
extends = nrf52840_base extends = nrf52840_base
board = wiscore_rak4631 board = wiscore_rak4631
board_level = pr
board_check = true board_check = true
build_flags = ${nrf52840_base.build_flags} build_flags = ${nrf52840_base.build_flags}
-I variants/nrf52840/rak4631 -I variants/nrf52840/rak4631

View File

@ -2,6 +2,7 @@
[env:seeed_xiao_nrf52840_kit] [env:seeed_xiao_nrf52840_kit]
extends = nrf52840_base extends = nrf52840_base
board = xiao_ble_sense board = xiao_ble_sense
board_level = pr
build_flags = ${nrf52840_base.build_flags} build_flags = ${nrf52840_base.build_flags}
-Ivariants/nrf52840/seeed_xiao_nrf52840_kit -Ivariants/nrf52840/seeed_xiao_nrf52840_kit
-Isrc/platform/nrf52/softdevice -Isrc/platform/nrf52/softdevice

View File

@ -2,6 +2,7 @@
[env:t-echo] [env:t-echo]
extends = nrf52840_base extends = nrf52840_base
board = t-echo board = t-echo
board_level = pr
board_check = true board_check = true
debug_tool = jlink debug_tool = jlink
@ -27,6 +28,7 @@ lib_deps =
[env:t-echo-inkhud] [env:t-echo-inkhud]
extends = nrf52840_base, inkhud extends = nrf52840_base, inkhud
board = t-echo board = t-echo
board_level = pr
board_check = true board_check = true
debug_tool = jlink debug_tool = jlink
build_flags = build_flags =

View File

@ -1,6 +1,7 @@
[env:tracker-t1000-e] [env:tracker-t1000-e]
extends = nrf52840_base extends = nrf52840_base
board = tracker-t1000-e board = tracker-t1000-e
board_level = pr
build_flags = ${nrf52840_base.build_flags} build_flags = ${nrf52840_base.build_flags}
-Ivariants/nrf52840/tracker-t1000-e -Ivariants/nrf52840/tracker-t1000-e
-Isrc/platform/nrf52/softdevice -Isrc/platform/nrf52/softdevice

View File

@ -1,6 +1,7 @@
[env:rak11310] [env:rak11310]
extends = rp2040_base extends = rp2040_base
board = rakwireless_rak11300 board = rakwireless_rak11300
board_level = pr
upload_protocol = picotool upload_protocol = picotool
# add our variants files to the include and src paths # add our variants files to the include and src paths
build_flags = build_flags =

View File

@ -1,6 +1,7 @@
[env:pico] [env:pico]
extends = rp2040_base extends = rp2040_base
board = rpipico board = rpipico
board_level = pr
upload_protocol = picotool upload_protocol = picotool
# add our variants files to the include and src paths # add our variants files to the include and src paths

View File

@ -1,6 +1,7 @@
[env:picow] [env:picow]
extends = rp2040_base extends = rp2040_base
board = rpipicow board = rpipicow
board_level = pr
upload_protocol = picotool upload_protocol = picotool
# add our variants files to the include and src paths # add our variants files to the include and src paths
build_flags = build_flags =

View File

@ -1,6 +1,7 @@
[env:pico2] [env:pico2]
extends = rp2350_base extends = rp2350_base
board = rpipico2 board = rpipico2
board_level = pr
upload_protocol = picotool upload_protocol = picotool
# add our variants files to the include and src paths # add our variants files to the include and src paths

View File

@ -1,6 +1,7 @@
[env:pico2w] [env:pico2w]
extends = rp2350_base extends = rp2350_base
board = rpipico2w board = rpipico2w
board_level = pr
upload_protocol = jlink upload_protocol = jlink
# debug settings for external openocd with RP2040 support (custom build) # debug settings for external openocd with RP2040 support (custom build)
debug_tool = custom debug_tool = custom

View File

@ -1,6 +1,7 @@
[env:rak3172] [env:rak3172]
extends = stm32_base extends = stm32_base
board = wiscore_rak3172 board = wiscore_rak3172
board_level = pr
board_upload.maximum_size = 233472 ; reserve the last 28KB for filesystem board_upload.maximum_size = 233472 ; reserve the last 28KB for filesystem
build_flags = build_flags =
${stm32_base.build_flags} ${stm32_base.build_flags}

View File

@ -1,6 +1,7 @@
[env:wio-e5] [env:wio-e5]
extends = stm32_base extends = stm32_base
board = lora_e5_dev_board board = lora_e5_dev_board
board_level = pr
board_upload.maximum_size = 233472 ; reserve the last 28KB for filesystem board_upload.maximum_size = 233472 ; reserve the last 28KB for filesystem
build_flags = build_flags =
${stm32_base.build_flags} ${stm32_base.build_flags}