]> git.lizzy.rs Git - rust.git/blob - .travis.yml
Fix cast_possible_wrap and cast_sign_loss warnings
[rust.git] / .travis.yml
1 language: rust
2
3 rust: nightly
4
5 os:
6   - linux
7   - osx
8
9 sudo: false
10
11 env:
12  global:
13    - RUST_BACKTRACE=1
14
15 before_install:
16  - |
17     # work-around for issue https://github.com/travis-ci/travis-ci/issues/6307
18     # might not be necessary in the future
19     if [ "$TRAVIS_OS_NAME" == "osx" ]; then
20      command curl -sSL https://rvm.io/mpapis.asc | gpg --import -
21      rvm get stable
22     fi
23
24 install:
25   - |
26     if [ -z ${INTEGRATION} ]; then
27       . $HOME/.nvm/nvm.sh
28       nvm install stable
29       nvm use stable
30       npm install remark-cli remark-lint
31     fi
32
33 matrix:
34   include:
35     - os: osx # run base tests on both platforms
36       env: BASE_TESTS=true
37     - os: linux
38       env: BASE_TESTS=true
39     - env: INTEGRATION=rust-lang/cargo
40     - env: INTEGRATION=rust-lang-nursery/rand
41     - env: INTEGRATION=rust-lang-nursery/stdsimd
42     - env: INTEGRATION=rust-lang-nursery/rustfmt
43     - env: INTEGRATION=rust-lang-nursery/futures-rs
44     - env: INTEGRATION=rust-lang-nursery/failure
45     - env: INTEGRATION=rust-lang-nursery/log
46     - env: INTEGRATION=rust-lang-nursery/chalk
47     - env: INTEGRATION=rust-lang-nursery/rls
48     - env: INTEGRATION=chronotope/chrono
49     - env: INTEGRATION=serde-rs/serde
50     - env: INTEGRATION=Geal/nom
51     - env: INTEGRATION=hyperium/hyper
52 # prevent these jobs with default env vars
53   exclude:
54     - os: linux
55     - os: osx
56
57 script:
58   - |
59       rm rust-toolchain
60       cargo install rustup-toolchain-install-master || echo "rustup-toolchain-install-master already installed"
61       RUSTC_HASH=$(git ls-remote https://github.com/rust-lang/rust.git master | awk '{print $1}')
62       travis_retry rustup-toolchain-install-master -f -n master $RUSTC_HASH
63       rustup default master
64       export LD_LIBRARY_PATH=$(rustc --print sysroot)/lib
65   - |
66     if [ -z ${INTEGRATION} ]; then
67       ./ci/base-tests.sh && sleep 5
68     else
69       ./ci/integration-tests.sh && sleep 5
70     fi
71
72 after_success: |
73   #!/bin/bash
74   if [ $(uname) == Linux ]; then
75     set -ex
76     if [ -z ${INTEGRATION} ]; then
77       ./.github/deploy.sh
78     else
79       echo "Not deploying, because we're in an integration test run"
80     fi
81     set +e
82   fi