Skip to content

ci: replace release job with update-deps workflow#55

Open
ppenna wants to merge 1 commit into
devfrom
enhancement/update-deps-workflow
Open

ci: replace release job with update-deps workflow#55
ppenna wants to merge 1 commit into
devfrom
enhancement/update-deps-workflow

Conversation

@ppenna

@ppenna ppenna commented May 17, 2026

Copy link
Copy Markdown
Contributor

Replace the monolithic release job with a new update-deps job that runs on repository_dispatch events (binutils-release / newlib-release).

What it does

  1. Parses incoming release tags — extracts version and commit hash from the dispatch payload
  2. Downloads tarballs and computes SHA256 checksums — ensures the z script gets accurate integrity pins
  3. Updates z script — rewrites BINUTILS_VERSION, BINUTILS_SHORT_COMMIT_HASH, BINUTILS_SHA256_CHECKSUM (and newlib equivalents for stage 1)
  4. Runs full CI validation — builds stage 0 (always), plus stage 1 + install + verify + smoke test (for newlib-release)
  5. Opens a PR — creates a branch, commits the z changes, and opens a PR against dev

Why

  • Regular CI builds (triggered by push/PR) continue using pinned versions in z
  • Dependency updates are now explicit, reviewable PRs instead of implicit release-time overrides
  • CI validates the new versions before the PR is opened

Replace the monolithic release job with a new update-deps job that:
- Parses incoming binutils/newlib release tags from repository_dispatch
- Downloads tarballs and computes SHA256 checksums
- Updates pinned versions in the z script via sed
- Runs full CI validation (stage 0 + stage 1 where applicable)
- Opens a PR against dev with the version changes

Regular CI builds triggered by push/PR continue using pinned versions.
Copilot AI review requested due to automatic review settings May 17, 2026 16:51

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR refactors the CI workflow by removing the monolithic “release” job and replacing it with an update-deps job that is triggered by repository_dispatch events (binutils-release / newlib-release). The new job updates pinned dependency versions/checksums in the repo’s z build utility, runs CI validation, and then opens a PR against dev.

Changes:

  • Replace the prior release-oriented job with an update-deps job triggered by repository_dispatch event types.
  • Add steps to parse incoming tags, download dependency tarballs, compute SHA256 checksums, and update pinned z variables via sed.
  • Run stage-appropriate CI validation and automatically push a branch + open a PR with the pinned dependency updates.
Show a summary per file
File Description
.github/workflows/nanvix-ci.yml Replaces the release pipeline with a dispatch-driven dependency update workflow that updates z, validates, and opens a PR.

Copilot's findings

  • Files reviewed: 1/1 changed files
  • Comments generated: 1

run: |
git tag ${{ steps.commit_info.outputs.tag_name }}
git push origin ${{ steps.commit_info.outputs.tag_name }}
git checkout -b "$BRANCH_NAME"
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