stages:
- build
link-checker-mlc:
stage: build
image: rust:latest
script:
- curl -L https://github.com/becheran/mlc/releases/download/v0.7.0/mlc -o mlc
- chmod +x mlc
- ./mlc --ignore-links "http*://crates.io*"
allow_failure: true
build-rust-nightly:
stage: build
image: rustlang/rust:nightly
script:
- cargo build --verbose
- cargo test --verbose
build-rust-latest:
image: rust:latest
stage: build
script:
- cargo build --verbose
- cargo test --verbose
build-with-coverage:
stage: build
image: akubera/rust-codecov:stable
script:
- cargo build --verbose
- cargo test --verbose
- |
for file in target/debug/*; do [ -x "${file}" ] || continue; mkdir -p "target/cov/$(basename $file)"; kcov --exclude-pattern=/.cargo,/usr/lib --verify "target/cov/$(basename $file)" "$file"; done &&
bash <(curl -s https://codecov.io/bash) &&
echo "Uploaded code coverage"