Skip to content

[no-ci] CI: avoid SIGPIPE when selecting core release tag - #2475

Open
rwgk wants to merge 1 commit into
NVIDIA:mainfrom
rwgk:fix_api_check_sigpipe
Open

[no-ci] CI: avoid SIGPIPE when selecting core release tag#2475
rwgk wants to merge 1 commit into
NVIDIA:mainfrom
rwgk:fix_api_check_sigpipe

Conversation

@rwgk

@rwgk rwgk commented Aug 1, 2026

Copy link
Copy Markdown
Contributor

Description

This extracts the API-check fix from #2470 so it can merge independently of the broader build-dependency work there. The regression can block CI for pull requests that modify cuda_core, so landing the focused fix quickly prevents it from continuing to interfere with unrelated work.

Root cause

The latest-release API check selected the newest cuda-core-v* tag with:

gh api ... --paginate | head -1

The step runs under bash -e -o pipefail. Once head received the first matching tag, it closed the pipe while gh was still paginating. gh then received SIGPIPE and exited with status 141, causing the step to fail even though it had successfully found a release tag.

This slipped through because the API-check job is gated on changes under cuda_core/. The job was introduced by #2300, whose own changes were confined to CI files, while #2393 only changed cuda_pathfinder; neither PR exercised the new path.

Fix

Replace head -1 with sed -n '1p'. sed prints the first matching tag while continuing to consume the complete paginated stream, allowing gh to finish normally. A genuine gh api failure still propagates through pipefail, and the existing explicit failure for an empty result remains unchanged.

This also incorporates the review concern raised on #2462: unlike the current || true implementation there, it does not suppress producer failures. PR #2464 carries overlapping work as part of its broader selective-wheel-build stack.

Why this is separate and [no-ci]

The exact commit was extracted unchanged from #2470, where the affected API check passed in multiple CI runs, including run 30650439462 and run 30688456702. It was also manually checked against live tag pagination and a simulated producer failure.

A standalone workflow-only PR does not set the cuda_core changed-path flag, so the affected API-check job would be skipped even without [no-ci]. Running the remaining matrix would therefore consume CI resources without exercising this fix. Splitting it out lets the blocker merge quickly while #2470 and #2464 continue their broader coordination.

Validation

Related: #2462, #2464, #2470.

Checklist

@copy-pr-bot

copy-pr-bot Bot commented Aug 1, 2026

Copy link
Copy Markdown
Contributor

Auto-sync is disabled for draft pull requests in this repository. Workflows must be run manually.

Contributors can view more details about this message here.

@github-actions github-actions Bot added the CI/CD CI/CD infrastructure label Aug 1, 2026
@rwgk rwgk added this to the cuda.core next milestone Aug 1, 2026 — with ChatGPT Codex Connector
@rwgk rwgk added bug Something isn't working P0 High priority - Must do! cuda.core Everything related to the cuda.core module labels Aug 1, 2026 — with ChatGPT Codex Connector
@rwgk rwgk self-assigned this Aug 1, 2026
@rwgk
rwgk marked this pull request as ready for review August 1, 2026 08:22
@rwgk
rwgk enabled auto-merge (squash) August 1, 2026 08:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Something isn't working CI/CD CI/CD infrastructure cuda.core Everything related to the cuda.core module P0 High priority - Must do!

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant