Skip to content

Fix the Release workflow failing on its source-archive check - #2

Merged
obinexus merged 1 commit into
mainfrom
fix/release-pipefail
Oct 2, 2026
Merged

obinexus merged 1 commit into
mainfrom
fix/release-pipefail

Conversation

@obinexus

@obinexus obinexus commented Oct 2, 2026 •

Copy link
Copy Markdown
Owner

Summary

The v0.1.2 tag's Release run (run 37024695621) failed in its first job, before building or releasing anything.

In gzip -dc archive | git get-tar-commit-id, get-tar-commit-id reads only the tar header and exits. gzip then hits a broken pipe, and the step's bash -e -o pipefail turns that into a failure (exit 141). The fix decompresses to a file first.

verify-pacman-client.sh had the same latent pattern (pacman -Qi | grep -q); it now captures the output first.

No tag is moved. After merging, the existing v0.1.2 is rebuilt by dispatching release.yml from main with tag=v0.1.2, then publish-repos.yml the same way.

Test plan

  • Reproduced under the runner's exact shell (bash --noprofile --norc -e -o pipefail) in a clean Ubuntu container: the old line exits 141. The fixed step passes against the real v0.1.2 archive: the archive is commit 3bc3879, and both recipes pin to 0.1.2-1 with sha256 2c6408e8…881e.
  • actionlint clean
  • CI on this PR

🤖 Generated with Claude Code

Summary by CodeRabbit

  • Chores
    • Updated release archive checks while retaining verification that the archive matches its tag.
    • Updated pacman package checks to display package details and confirm signature validation.

The v0.1.2 tag's Release run failed before building anything: in
`gzip -dc archive | git get-tar-commit-id`, get-tar-commit-id reads only
the tar header and exits, gzip then hits a broken pipe, and the step's
`bash -e -o pipefail` turns that into a failure (exit 141). Decompress to
a file first. Reproduced and verified against the real v0.1.2 archive
under the runner's exact shell options: the archive is commit 3bc3879 and
both recipes pin to 0.1.2-1.

Same latent pattern in verify-pacman-client.sh (`pacman -Qi | grep -q`):
capture the output first.

No tag is moved: the existing v0.1.2 is rebuilt by dispatching this
workflow from main with tag=v0.1.2.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@coderabbitai

coderabbitai Bot commented Oct 2, 2026 •

Copy link
Copy Markdown

Review in Change Stack →

Navigate logical layers of code changes, visualize relationships, and explore their blast radius.

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Advanced

Run ID: b0da1ee9-f309-44ab-a0d1-d4a23822cd4a

📥 Commits

Reviewing files that changed from the base of the PR and between 3bc3879 and 2a0b26d.

📒 Files selected for processing (2)
  • .github/workflows/release.yml
  • packaging/repo/verify-pacman-client.sh

Included review availability: This review used your included allowance. Your plan provides up to 1 included review per hour; 0 remain after this review.


📝 Walkthrough

Walkthrough

The release workflow now reads an archive commit ID from a decompressed temporary file. The pacman client verifier now uses one package information query for both displayed metadata and signature validation.

Changes

Release archive verification

Layer / File(s) Summary
Read archive commit ID
.github/workflows/release.yml
The workflow decompresses the source archive to a temporary file before reading its commit ID. The comparison with the checked-out tag remains unchanged.

Pacman client verification

Layer / File(s) Summary
Reuse package information
packaging/repo/verify-pacman-client.sh
The verifier captures pacman -Qi output once. It uses that output to display package fields and check signature validation.

Priority: ➖ Normal

Estimated code review effort: 2 (Simple) | ~10 minutes

Change: Bug fix

Suggested reviewers: obinexusmk2

Merge Risk: ⚪ Minimal · up to 2a0b2

The release archive check and both package-verification paths retain their required checks. No actionable merge risk is established.

Architecture Summary

Architecture risk: 🔵 Low · up to 2a0b2

The change affects 1 system.

Changed systems: packaging

Architecture concerns
No architecture-level concerns identified.

Review details

Systems and components

  • observed — packaging (service) was modified; 1 changed file maps to changed impact.

Before / after behavior

  • observed — Modified behavior in packaging/repo/verify-pacman-client.sh: The verifier now captures pacman -Qi output once and uses it both to display package metadata and to check signature validation, replacing two separate queries.
  • observed — Modified behavior in .github/workflows/release.yml: The archive commit ID is now read from a decompressed temporary file rather than a gzip pipeline; the subsequent comparison with the tag’s checked-out commit is unchanged.
🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly and concisely describes the main change: fixing the Release workflow source-archive verification failure. It matches the primary objective of the pull request.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff. Analyzed 0 functions across 1…
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
📝 Generate docstrings
  • Commit to this branch
  • Create a new PR
🧪 Generate unit tests (beta)
  • Commit to this branch
  • Create a new PR
  • Autopilot · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Autopilot is currently an internal CodeRabbit preview.


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@obinexus
obinexus merged commit f2d56bc into main Oct 2, 2026
16 checks passed
@obinexus
obinexus deleted the fix/release-pipefail branch October 10, 2026 15:45
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