image: "rust:latest"
.run_test: &run_test
script:
- rustup update
- rustup component add rustfmt clippy
- rustup --version && rustc --version && cargo --version
- cargo fmt --all --check --verbose
- cargo clippy --workspace --all-targets --all-features --verbose -- -D warnings
- cargo test --workspace --all-targets --all-features --verbose
cache:
key:
files:
- Cargo.lock
paths:
- target/
test:stable:
<<: *run_test
before_script:
- rustup default stable
test:beta:
<<: *run_test
before_script:
- rustup default beta