-
Notifications
You must be signed in to change notification settings - Fork 158
ci: create a separate release workflow for zetaclient and zetacore #4329
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
|
Important Review skippedAuto incremental reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the You can disable this status message by setting the 📝 WalkthroughWalkthroughAdds separate GitHub Actions workflows and Goreleaser configs to independently build and publish ZetaClient and ZetaCore releases. Updates the existing unified release workflow to adjust version environment handling. Extends the Makefile with new snapshot and release targets for each component and shared validation. Changes
Sequence Diagram(s)sequenceDiagram
autonumber
actor Dev as Developer
participant GH as GitHub Actions
participant Repo as Repo
participant Make as Makefile
participant GHRel as GitHub Release
participant Prov as Attest Provenance
Dev->>GH: Dispatch publish-release-zetaclient (version, skip flags)
GH->>GH: Job: log (echo inputs)
GH->>Repo: Job: check-branch (detect release/zetaclient/*)
alt skip_checks != true
GH->>Repo: Job: check-goreleaser (snapshot build)
else
Note over GH: Snapshot skipped
end
alt skip_release != true
GH->>Repo: Job: publish-release (checkout)
GH->>GH: Extract release notes (changelog-current.md)
GH->>GH: Set VERSION_INPUT -> GITHUB_TAG_VERSION
GH->>Repo: Create tag (delete/recreate if exists)
GH->>GHRel: Create GitHub release (notes, tag)
GH->>Make: make release-zetaclient
Make-->>GHRel: Upload artifacts
GH->>Prov: Generate attestations
Prov-->>GHRel: Upload attestation bundle
GH->>GH: Cleanup workspace
GH->>GH: Job: publish-typescript (reusable workflow)
else
Note over GH: Release skipped
end
sequenceDiagram
autonumber
actor Dev as Developer
participant GH as GitHub Actions
participant Repo as Repo
participant Make as Makefile
participant GHRel as GitHub Release
participant Prov as Attest Provenance
Dev->>GH: Dispatch publish-release-zetacore (version, skip flags)
GH->>GH: Job: log (echo inputs)
GH->>Repo: Job: check-branch (detect release/zetacore/*)
alt skip_checks != true
GH->>Repo: Job: check-goreleaser (snapshot build)
else
Note over GH: Snapshot skipped
end
alt skip_release != true
GH->>Repo: Job: publish-release (checkout)
GH->>GH: Extract release notes (changelog-current.md)
GH->>GH: Set VERSION_INPUT -> GITHUB_TAG_VERSION
GH->>Repo: Create tag (delete/recreate if exists)
GH->>GHRel: Create GitHub release (notes, tag)
GH->>Make: make release-zetacore
Make-->>GHRel: Upload artifacts
GH->>Prov: Generate attestations
Prov-->>GHRel: Upload attestation bundle
GH->>GH: Cleanup workspace
else
Note over GH: Release skipped
end
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~25 minutes Pre-merge checks and finishing touches❌ Failed checks (3 warnings)
✅ Passed checks (2 passed)
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. Comment |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 3
📜 Review details
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Pro
Disabled knowledge base sources:
- Linear integration is disabled by default for public repositories
You can enable these sources in your CodeRabbit configuration.
📒 Files selected for processing (6)
.github/workflows/publish-release-zetaclient.yml(1 hunks).github/workflows/publish-release-zetacore.yml(1 hunks).github/workflows/publish-release.yml(1 hunks).goreleaser-zetaclient.yaml(1 hunks).goreleaser-zetacore.yaml(1 hunks)Makefile(1 hunks)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (5)
- GitHub Check: start-e2e-test / e2e
- GitHub Check: build-and-test
- GitHub Check: build
- GitHub Check: gosec
- GitHub Check: analyze (go)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
lgtm
Co-authored-by: semgrep-code-zeta-chain[bot] <181804379+semgrep-code-zeta-chain[bot]@users.noreply.github.com>
Co-authored-by: semgrep-code-zeta-chain[bot] <181804379+semgrep-code-zeta-chain[bot]@users.noreply.github.com>
…4329) * publish release actions * gorelease new files * fix security warning * fix coderabbit comments * reorganize workflow * Update .github/workflows/release-template.yml Co-authored-by: semgrep-code-zeta-chain[bot] <181804379+semgrep-code-zeta-chain[bot]@users.noreply.github.com> * Update .github/workflows/release-template.yml Co-authored-by: semgrep-code-zeta-chain[bot] <181804379+semgrep-code-zeta-chain[bot]@users.noreply.github.com> --------- Co-authored-by: semgrep-code-zeta-chain[bot] <181804379+semgrep-code-zeta-chain[bot]@users.noreply.github.com>
Description
Closes #4260
zetae2e release is currently associated with zetaclientd for simplification since we should always do zetaclientd release associated with new zetacored release, even in the new workflow.
Note: not removing the older publish release for now in case we still need it for a patch. This will be addresses in Remove legacy publish release workflow
Summary by CodeRabbit
New Features
Chores