Skip to content

wip

wip #3

Workflow file for this run

# Testing CI - Runs on each PR and Push
name: Test
on:
pull_request:
push:
env:
CARGO_TERM_COLOR: always
jobs:
check-formatting:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install Rust Toolchain
uses: actions-rs/toolchain@v1
with:
toolchain: nightly-2024-01-11
default: true
components: rustfmt
- name: Check formatting
run: cargo fmt --check
cargo-check:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install Rust Toolchain
uses: actions-rs/toolchain@v1
with:
toolchain: nightly-2024-01-11
default: true
profile: minimal
- name: Cargo Check
run: cargo check --all
clippy-check:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install Rust Toolchain
uses: actions-rs/toolchain@v1
with:
toolchain: nightly-2024-01-11
default: true
components: rustfmt, clippy
- name: Clippy Check
run: cargo clippy --all
test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install Rust Toolchain
uses: actions-rs/toolchain@v1
with:
toolchain: nightly-2024-01-11
default: true
components: rustfmt, clippy
- name: Install cargo nextest
uses: baptiste0928/cargo-install@v1
with:
crate: cargo-nextest
locked: true
- name: Install JNA
run: wget https://repo1.maven.org/maven2/net/java/dev/jna/jna/5.13.0/jna-5.13.0.jar
- name: Run sccache-cache
uses: mozilla-actions/[email protected]
- name: Run tests
run: CLASSPATH="$PWD/jna-5.13.0.jar" cargo nextest run
env:
# Required env-var to increase the heapsize when using `kotlinc`.
JAVA_OPTS: "-Xmx8g"
# Enable sccache
SCCACHE_GHA_ENABLED: "true"
RUSTC_WRAPPER: "sccache"
codecoverage:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install Rust Toolchain
uses: actions-rs/toolchain@v1
with:
toolchain: nightly-2024-01-11
default: true
- name: Install cargo tarpaulin
uses: baptiste0928/cargo-install@v1
with:
crate: cargo-tarpaulin = "0.27.3"
locked: true
- name: Generate code coverage
run: cargo +nightly tarpaulin
- name: Upload to codecov.io
uses: codecov/codecov-action@v2
with:
fail_ci_if_error: true