forked from rust-av/rust-av
-
Notifications
You must be signed in to change notification settings - Fork 0
/
.travis.yml
62 lines (55 loc) · 1.47 KB
/
.travis.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
sudo: required
language: rust
rust: nightly
# Cache cargo symbols for faster build
cache: cargo
# Dependencies of kcov, used by coverage
addons:
apt:
packages:
- libcurl4-openssl-dev
- libelf-dev
- libdw-dev
- binutils-dev
- cmake # also required for cargo-update
sources:
- kalakris-cmake
# Who needs exports when you can have travis do the work?
# Also setup job matrix
env:
global:
- PATH=$HOME/.cargo/bin:$PATH
- CARGO_FEATURES_DEFAULT=["nightly"]
- RUST_BACKTRACE=1
matrix:
- CRATE=bitstream
- CRATE=codec
- CRATE=data
- CRATE=format
# Setup av crate since that job runs a bit differently
matrix:
include:
- env: CRATE=av
script:
- |
cargo build --verbose &&
cargo test --verbose &&
cargo bench --verbose &&
cargo doc --verbose
after_success: cargo coveralls --all --verbose
before_script:
- cargo install cargo-update --verbose || echo "cargo-update already installed"
- cargo install cargo-travis --verbose || echo "cargo-travis already installed"
- cargo install-update -a # update outdated cached binaries
# the main build
script:
- |
cd ${CRATE}
cargo build --verbose &&
cargo test --verbose &&
cargo bench --verbose &&
cargo doc --verbose
cd ..
# after_success:
# measure code coverage and upload to coveralls.io
# - cargo coveralls --package av-${CRATE}