Skip to content

GitHub actions workflow#106

Open
gloskull wants to merge 2 commits into
VeriNode-Labs:mainfrom
gloskull:GitHub-Actions-Workflow
Open

GitHub actions workflow#106
gloskull wants to merge 2 commits into
VeriNode-Labs:mainfrom
gloskull:GitHub-Actions-Workflow

Conversation

@gloskull

Copy link
Copy Markdown

Motivation

  • Reduce CI runtime and surface independent failures earlier by parallelizing build and test lanes.
  • Improve CI stability and developer experience by adding per-lane caching and cancelling superseded runs.
  • Isolate the Python storage-layout check so it does not block the main build/test matrix.

Description

  • Reworked .github/workflows/rust.yml to replace the single sequential job with a checks matrix that runs cargo build and cargo test in parallel using matrix entries and per-lane commands like cargo build --locked --verbose and cargo test --locked --verbose.
  • Added workflow-level permissions: contents: read and concurrency cancellation to stop superseded runs on the same ref, and set CARGO_INCREMENTAL=0 to disable incremental compilation in CI.
  • Added Cargo caching via Swatinem/rust-cache@v2 for registry and build artifacts and a separate storage-layout job that runs python scripts/storage-layout-check.py after updating actions/setup-python to v5.
  • Small improvements to step naming and timeouts to make the workflow clearer and more robust.

Testing

  • Ran cargo build --locked --verbose which completed successfully (with an unrelated dead-code warning).
  • Ran python scripts/storage-layout-check.py which passed with no collisions detected.
  • Ran cargo test --locked --verbose which executed the test suite but reported existing failures (17 failing tests) in pool_manager tests due to Soroban storage access outside env.as_contract(); these failures are pre-existing and unrelated to the workflow changes.
  • Ran a formatting check (cargo fmt --all -- --check) and observed repository-wide formatting drift, so no fmt gate was added to this workflow change.

Closes #84

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.

GitHub Actions Workflow Optimization and Parallelization

1 participant