]> git.lizzy.rs Git - rust.git/blob - .travis.yml
Add #[ignore] to test that runs external process (#3690)
[rust.git] / .travis.yml
1 sudo: false
2 language: rust
3 rust: nightly
4 os: linux
5 cache:
6  directories:
7   - $HOME/.cargo
8
9 addons:
10   apt:
11     packages:
12     - libcurl4-openssl-dev
13     - libelf-dev
14     - libdw-dev
15
16 matrix:
17   include:
18     - env: DEPLOY=LINUX
19     - env: CFG_RELEASE_CHANNEL=beta
20     - os: osx
21     - env: INTEGRATION=bitflags
22     - env: INTEGRATION=chalk
23     - env: INTEGRATION=crater
24     - env: INTEGRATION=error-chain
25     - env: INTEGRATION=glob
26     - env: INTEGRATION=log
27     - env: INTEGRATION=mdbook
28     - env: INTEGRATION=packed_simd
29     - env: INTEGRATION=rust-semverver
30     - env: INTEGRATION=stdsimd TARGET=x86_64-unknown-linux-gnu
31     - env: INTEGRATION=tempdir
32     - env: INTEGRATION=futures-rs
33   allow_failures:
34     # Using old configuration option
35     - env: INTEGRATION=rand
36     # Doesn't build - keep this in allow_failures as it's fragile to breaking changes of rustc.
37     - env: INTEGRATION=rust-clippy
38     # Doesn't build - seems to be because of an option
39     - env: INTEGRATION=packed_simd
40     # Doesn't build - a temporal build failure due to breaking changes in the nightly compilre
41     - env: INTEGRATION=rust-semverver
42     # can be moved back to include section after https://github.com/rust-lang-nursery/failure/pull/298 is merged
43     - env: INTEGRATION=failure
44     # `cargo test` doesn't finish - disabling for now.
45     # - env: INTEGRATION=cargo
46
47 script:
48   - |
49     if [ -z ${INTEGRATION} ]; then
50       cargo build
51       cargo test
52       cargo test -- --ignored
53     else
54       ./ci/integration.sh
55     fi
56
57 after_success:
58 - if [ -z ${INTEGRATION} ]; then travis-cargo coveralls --no-sudo; fi
59
60 before_deploy:
61   # TODO: cross build
62  - cargo build --release --target=x86_64-unknown-linux-gnu
63  - tar czf rustfmt-x86_64-unknown-linux-gnu.tar.gz Contributing.md Design.md README.md -C target/x86_64-unknown-linux-gnu/release/rustfmt rustfmt
64
65 deploy:
66   provider: releases
67   api_key:
68     secure: "your own encrypted key"
69   file:
70   - rustfmt-x86_64-unknown-linux-gnu.tar.gz
71   on:
72     repo: nrc/rustfmt
73     tags: true
74     condition: "$DEPLOY = LINUX"
75   skip_cleanup: true