summaryrefslogtreecommitdiffstats
path: root/.travis.yml
blob: d9b958130edab1f5592c47f2914e8b67ea9b4ea6 (plain)
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
sudo: required
language: rust

# 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

# run builds for all the trains (and more)
rust:
  #- nightly
  #- beta
  # check it compiles on the latest stable compiler
  - stable
  # and the first stable one (this should be bumped as the minimum
  # Rust version required changes)
  #- 1.0.0

before_script:
  - cd rust
  - export PATH=$HOME/.cargo/bin:$PATH
  - cargo install cargo-update || echo "cargo-update already installed"
  - cargo install cargo-travis || echo "cargo-travis already installed"
  - cargo install-update -a # update outdated cached binaries

# the main build
# cargo bench &&
script:
  - |
      cd rust &&
      cargo build &&
      cargo test &&
      cargo doc

after_success:
  - cd rust
# upload documentation to github.io (gh-pages branch)
  - cargo doc-upload
# measure code coverage and upload to coveralls.io
  - cargo coveralls