Skip to content

refactor: CI pipeline#403

Open
zannis wants to merge 7 commits intojoshstevens19:masterfrom
zannis:refactor/ci-pipeline
Open

refactor: CI pipeline#403
zannis wants to merge 7 commits intojoshstevens19:masterfrom
zannis:refactor/ci-pipeline

Conversation

@zannis
Copy link
Copy Markdown
Contributor

@zannis zannis commented Apr 10, 2026

CI/CD Pipeline Refactor

Split the monolithic 824-line ci-cd.yml into two focused workflows.

ci.yml — Lint & Test

Runs on PRs and pushes to master.

  • fmt — rustfmt check
  • clippy — clippy lint check
  • test — two runs:
    • Default features (kafka on, reth off) — covers #[cfg(not(feature = "reth"))] paths
    • All features (reth, jemalloc, kafka, debug-json) — covers #[cfg(feature = "reth")] paths
  • coverage — cargo-llvm-cov + cargo-nextest, uploaded to Codecov in lcov format
  • Ubuntu-only, with Swatinem/rust-cache@v2 on all jobs
  • concurrency group cancels superseded PR runs

release.yml — Release Pipeline

Runs on pushes to release/** branches and master.

  • version-bump — uses cargo-edit (cargo set-version) to bump cli/ and core/ versions, commits and pushes
  • create-pr — creates a release PR to master (idempotent)
  • release-build — builds cross-platform binaries (linux, macOS Intel/ARM, Windows), only on master after a release commit merge
  • release — creates a GitHub Release and uploads binary assets

Removed

  • Binary builds on every PR — was building across 4 platforms with a 240-minute timeout
  • Duplicate test runs — previously ran tests twice (with/without reth separately); now uses default vs --all-features which properly exercises both cfg branches
  • sed-based version bumping — replaced by cargo set-version
  • Dead code — Linux ARM cross-compilation steps (target was never in the matrix), commented-out changelog update block

Setup required

  • Add a CODECOV_TOKEN secret to the repository (Settings → Secrets and variables → Actions) for coverage uploads

@vercel
Copy link
Copy Markdown

vercel bot commented Apr 10, 2026

@zannis is attempting to deploy a commit to the joshaavecom's projects Team on Vercel.

A member of the Team first needs to authorize it.

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.

1 participant