You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
When a PR doesn't change any .bb files, build-test-recipe falls back to building all recipes with ptests. This default set includes recipes that aren't compatible with all architectures, causing false build failures that block merges on every release cycle.
This is a recurring operational burden — every week we have to force-merge PRs that are blocked by false CI failures from incompatible architecture builds.
Affected recipes (confirmed)
amazon-cloudwatch-agent — fails on qemuarm (scarthgap), qemuriscv64 (whinlatter)
corretto-*-bin (8, 17, 21, 25) — fail on qemuarm and qemuriscv64 (correctly marked COMPATIBLE_MACHINE = "null" but CI doesn't filter them)
greengrass-component-helloworld-rust — doesn't exist on scarthgap
amazon-kvs-producer-pic — compile failure on riscv64, ptest Bus error on arm32
Root cause
The COMPATIBLE_MACHINE filtering in build-test-recipe.yml has pattern matching bugs:
qemuarm maps to arm architecture but the grep checks for armv7a/armv7ve — doesn't match
The filtering logic doesn't handle all the ways recipes declare incompatibility
The THINGS_TO_EXCLUDE hardcoded list is incomplete
Impact
Blocks automated version-upgrade PRs from merging without manual intervention
Blocks CI workflow PRs (which don't touch .bb files at all) from passing
Requires maintainer time every release cycle to force-merge past false failures
Erodes trust in CI — real failures get lost in the noise
Proposed fix
Options (not mutually exclusive):
Fix the architecture pattern matching in the filtering logic to correctly map qemu machines to their architecture overrides
Problem
When a PR doesn't change any
.bbfiles,build-test-recipefalls back to building all recipes with ptests. This default set includes recipes that aren't compatible with all architectures, causing false build failures that block merges on every release cycle.This is a recurring operational burden — every week we have to force-merge PRs that are blocked by false CI failures from incompatible architecture builds.
Affected recipes (confirmed)
amazon-cloudwatch-agent— fails on qemuarm (scarthgap), qemuriscv64 (whinlatter)corretto-*-bin(8, 17, 21, 25) — fail on qemuarm and qemuriscv64 (correctly markedCOMPATIBLE_MACHINE = "null"but CI doesn't filter them)greengrass-component-helloworld-rust— doesn't exist on scarthgapamazon-kvs-producer-pic— compile failure on riscv64, ptest Bus error on arm32Root cause
The
COMPATIBLE_MACHINEfiltering inbuild-test-recipe.ymlhas pattern matching bugs:qemuarmmaps toarmarchitecture but the grep checks forarmv7a/armv7ve— doesn't matchTHINGS_TO_EXCLUDEhardcoded list is incompleteImpact
.bbfiles at all) from passingProposed fix
Options (not mutually exclusive):
THINGS_TO_EXCLUDElist to cover all known-incompatible recipes.bb/.incfiles are changed (workflow-only PRs don't need recipe builds)Option 4 is the quickest win. Option 1 is the proper fix.