]> git.lizzy.rs Git - rust.git/blobdiff - .travis.yml
Merge pull request #3100 from topecongiro/issue-3092
[rust.git] / .travis.yml
index 9434b1255fb47541da616e356bad5f5194a6a717..42e0938d78298068c52ec23714871bde2d8ae3b2 100644 (file)
@@ -1,14 +1,58 @@
 sudo: false
 language: rust
-rust:
- - nightly
-os:
- - linux
- - osx
+rust: nightly
+os: linux
+cache:
+ directories:
+  - $HOME/.cargo
+
+addons:
+  apt:
+    packages:
+    - libcurl4-openssl-dev
+    - libelf-dev
+    - libdw-dev
+
+matrix:
+  include:
+    - env: DEPLOY=LINUX
+    - env: CFG_RELEASE_CHANNEL=beta
+    - os: osx
+    - env: INTEGRATION=bitflags
+    - env: INTEGRATION=cargo
+    - env: INTEGRATION=chalk
+    - env: INTEGRATION=crater
+    - env: INTEGRATION=error-chain
+    - env: INTEGRATION=failure
+    - env: INTEGRATION=futures-rs
+    - env: INTEGRATION=glob
+    - env: INTEGRATION=log
+    - env: INTEGRATION=mdbook
+    - env: INTEGRATION=packed_simd
+    - env: INTEGRATION=rand
+    - env: INTEGRATION=rust-clippy
+    - env: INTEGRATION=rust-semverver
+    - env: INTEGRATION=stdsimd
+    - env: INTEGRATION=tempdir
+  allow_failures:
+    # Doesn't build
+    - env: INTEGRATION=futures-rs
+    # Doesn't build - seems to be because of an option
+    - env: INTEGRATION=packed_simd
+    # Test failure
+    - env: INTEGRATION=rust-clippy
 
 script:
- - cargo build
- - cargo test
+  - |
+    if [ -z ${INTEGRATION} ]; then
+      cargo build
+      cargo test
+    else
+      ./ci/integration.sh
+    fi
+
+after_success:
+- if [ -z ${INTEGRATION} ]; then travis-cargo coveralls --no-sudo; fi
 
 before_deploy:
   # TODO: cross build
@@ -24,5 +68,5 @@ deploy:
   on:
     repo: nrc/rustfmt
     tags: true
-    condition: "$TRAVIS_OS_NAME = linux"
+    condition: "$DEPLOY = LINUX"
   skip_cleanup: true