Skip to content

ci: fail the rpm build on an unhandled matrix arch - #6193

Open
prql-bot wants to merge 1 commit into
mainfrom
fix/rpm-arch-guard
Open

ci: fail the rpm build on an unhandled matrix arch#6193
prql-bot wants to merge 1 commit into
mainfrom
fix/rpm-arch-guard

Conversation

@prql-bot

Copy link
Copy Markdown
Collaborator

The Set variables step in build-rpm-package logs ::error::Unknown architecture for an unrecognized matrix.target but doesn't exit, so the step still succeeds. ::error:: only emits an annotation — it doesn't fail a step. The job then continues with package_arch never written to $GITHUB_ENV, and jiro4989/build-rpm-action receives arch: "", so a release could ship an RPM built under whatever arch the action defaults to rather than failing loudly.

The sibling build-deb-package job directly above has the identical if/elif/else shape and does exit 1 in the else branch (release.yaml#L163-L171) — this restores that symmetry.

Not reachable today: the rpm matrix carries only x86_64-unknown-linux-musl, since the aarch64 entry is commented out pending jiro4989/build-rpm-action#6. The branch matters when that entry comes back or a new target is added — the point of the guard is to catch a target that no branch handles.

No regression test: this is a one-line guard in a workflow YAML on a branch that requires an unhandled matrix entry to reach, and the repo has no harness for executing release-workflow shell steps. Failure would be observed as the job going red instead of silently mislabeling the package.

Found by the nightly code-quality survey while reviewing .github/workflows/release.yaml.

@prql-bot

Copy link
Copy Markdown
Collaborator Author

CI note, so this isn't misread as a regression from the change: nightly / nightly-release / build-python-wheels (ubuntu-24.04, prqlc-python, x86_64) failed before running any of this repo's code. The runner couldn't fetch the action tarball:

##[error]An action could not be found at the URI 'https://codeload.github.com/PyO3/maturin-action/tar.gz/e83996d129638aa358a18fbd1dfb82f0b0fb5d3b'
##[error]Failed to download archive '...' after 1 attempts.

That's the Download action repository 'PyO3/maturin-action@v1' step of the runner's action-setup phase — it aborts before ./.github/actions/build-python executes, so nothing in the checkout is involved. The sibling legs using the same action on the same commit (windows-latest, x86_64 and ubuntu-24.04, source) both passed, and the diff here is a single exit 1 inside build-rpm-package, a job the python matrix doesn't depend on. githubstatus.com reported no open incident at the time, so this reads as an isolated codeload fetch flake rather than a broader outage.

nightly is in check-ok-to-merge's needs list, so that required check will go red until the leg is rerun. I couldn't rerun it from this session — gh run rerun --failed refuses while the parent run is still in progress ("This workflow is already running"), and the remaining nightly jobs (cargo-bench, time-compilation (false), the multi-arch builds) run well past this session's polling budget. A gh run rerun 31777923638 --failed once that run settles should clear it.

Everything else that reached terminal on this commit passed. Unverified at the time this was written, all still in progress: cargo-bench, time-compilation (false), several nightly-release build legs, check-links-markdown, measure-code-cov, build-prqlc-c (macos-15), and the check-ok-to-merge omnibus (required) which hadn't registered yet.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants