# Setup a cache to cache job parts between jobs to ensure faster builds cache: key: "$CI_JOB_NAME" untracked: true paths: - $HOME/.cargo/ - target/ # Set any required environment variables here variables: RUST_BACKTRACE: "FULL" image: "rust:latest" stages: - install - test install: stage: install script: - rustup default stable check: stage: test before_script: - rustup component add rustfmt clippy - cargo install cargo-audit script: - cargo check --verbose - cargo fmt -- --check - cargo clippy -- -D warnings - cargo audit debug: stage: test before_script: - apt update && apt install -yy gcc-riscv64-linux-gnu g++-riscv64-linux-gnu qemu-user-static script: - RUST_MIN_STACK=8388608 cargo test release: stage: test before_script: - apt update && apt install -yy gcc-riscv64-linux-gnu g++-riscv64-linux-gnu qemu-user-static script: - RUST_MIN_STACK=8388608 cargo test --release