| --- |
| sudo: enabled |
| dist: trust |
| |
| language: rust |
| cache: cargo |
| rust: |
| - stable |
| - beta |
| - nightly |
| |
| env: |
| global: |
| # for codecov.io |
| - RUSTFLAGS="-C link-dead-code" |
| |
| script: |
| - RUST_BACKTRACE=full cargo build --features=cli --verbose |
| - RUST_BACKTRACE=full cargo test --features=cli --verbose |
| |
| after_failure: |
| - cat Cargo.lock |
| |
| after_success: | |
| sudo apt-get install -y libcurl4-openssl-dev libelf-dev libdw-dev cmake gcc binutils-dev && |
| wget https://github.com/SimonKagstrom/kcov/archive/master.tar.gz && |
| tar xzf master.tar.gz && |
| cd kcov-master && |
| mkdir build && |
| cd build && |
| cmake .. && |
| make && |
| sudo make install && |
| cd ../.. && |
| rm -rf kcov-master && |
| for file in target/debug/*-*[^\.d]; do 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" |