Skip to content

CI optimization

CI optimization #97

Workflow file for this run

name: CI
on:
pull_request:
types: [ labeled ]
push:
branches: [ develop, main ]
concurrency:
group: ${{ github.ref }}
cancel-in-progress: true
jobs:
toml:
runs-on: self-hosted
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@stable
- name: Install taplo
run: cargo install taplo-cli --locked
- name: List versions
run: |
cargo --version
taplo --version
- name: Run taplo
run: taplo format --check --diff
- name: Taplo failure info
if: failure()
run: |
echo 'TOML is not formatted correctly'
echo 'Please run taplo format'
format:
runs-on: self-hosted
needs: toml
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@stable
with:
toolchain: nightly
components: rustfmt
- name: List version
run: |
cargo --version
cargo fmt --version
- name: Cargo format
run: cargo fmt --all -- --check
- name: Cargo fmt failure info
if: failure()
run: |
echo '.rs files are not formatted correctly'
echo 'Please run cargo fmt --all'
clippy_build_and_test:
runs-on: self-hosted
needs:
- format
steps:
- uses: actions/checkout@v4
- name: Cargo caching
uses: actions/cache@v4
with:
path: |
~/.cargo/bin/
~/.cargo/registry/index/
~/.cargo/registry/cache/
~/.cargo/git/db/
target/
key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }}
- uses: dtolnay/rust-toolchain@stable
with:
toolchain: 1.77.0
target: wasm32-unknown-unknown
components: clippy rust-src
- name: List version
run: |
rustup show
cargo --version
cargo clippy --version
- name: Build in dev mode
run: RUSTFLAGS="-D warnings" cargo build --profile ci --locked
- name: Cargo clippy
run: RUSTFLAGS="-D warnings" cargo clippy --profile ci --locked
- name: Run tests
run: RUSTFLAGS="-D warnings" cargo test --profile ci --locked --workspace
# FIXME(#35,@serhii,27/5/2024): Revert the commit from the issue to restore the full set of CI steps.