summaryrefslogtreecommitdiff
path: root/.travis.yml
diff options
context:
space:
mode:
Diffstat (limited to '.travis.yml')
-rw-r--r--.travis.yml92
1 files changed, 52 insertions, 40 deletions
diff --git a/.travis.yml b/.travis.yml
index 700e7fdf..cf8a20cb 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -1,35 +1,42 @@
+#
+# Operating Environment
+#
language: rust
sudo: false
dist: trusty
services:
- docker
+addons:
+ apt:
+ packages:
+ - gcc-multilib
+ - libcurl4-openssl-dev
+ - libelf-dev
+ - libdw-dev
+ - binutils-dev
rust:
- - 1.1.0 # Oldest supported version
- - 1.2.0
- - 1.3.0
- - 1.4.0
- - 1.5.0
- - 1.6.0
+ - 1.2.0 # Oldest supported version
+ - 1.7.0
+ - 1.8.0
- stable
- beta
- nightly
-script:
- - bash ci/run-travis.sh
-
+#
+# Environment Variables and Build Matrix
+#
env:
- - ARCH=x86_64
- - ARCH=i686
+ global:
+ - PATH=$HOME/.local/bin:$PATH
+ - TRAVIS_CARGO_NIGHTLY_FEATURE=""
+ matrix:
+ - ARCH=x86_64
+ - ARCH=i686
-os:
+os: # OSX included in build matrix explicitly
- linux
-addons:
- apt:
- packages:
- - gcc-multilib
-
# Failures on nightly shouldn't fail the overall build.
matrix:
fast_finish: true
@@ -43,10 +50,10 @@ matrix:
rust: stable
- os: osx
env: ARCH=x86_64
- rust: 1.1.0
+ rust: 1.2.0
- os: osx
env: ARCH=i686
- rust: 1.1.0
+ rust: 1.2.0
# Docker builds for other targets
- os: linux
env: TARGET=aarch64-unknown-linux-gnu DOCKER_IMAGE=posborne/rust-cross:arm
@@ -61,7 +68,7 @@ matrix:
rust: 1.7.0
sudo: true
- os: linux
- env: TARGET=mipsel-unknwon-linux-gnu DOCKER_IMAGE=posborne/rust-cross:mips
+ env: TARGET=mipsel-unknown-linux-gnu DOCKER_IMAGE=posborne/rust-cross:mips
rust: 1.7.0
sudo: true
- os: linux
@@ -71,25 +78,30 @@ matrix:
allow_failures:
- rust: nightly
- env: TARGET=mips-unknown-linux-gnu DOCKER_IMAGE=posborne/rust-cross:mips
- - env: TARGET=mipsel-unknwon-linux-gnu DOCKER_IMAGE=posborne/rust-cross:mips
+ - env: TARGET=mipsel-unknown-linux-gnu DOCKER_IMAGE=posborne/rust-cross:mips
- env: TARGET=arm-linux-androideabi DOCKER_IMAGE=posborne/rust-cross:android
-# Deploy documentation to S3 for specific branches. At some
-# point, it would be nice to also support building docs for
-# a specific tag
-deploy:
- provider: s3
- access_key_id: AKIAIGFX36YKEFRZJAXA
- secret_access_key:
- secure: Q10KEdtBoYxaGXtt23L00J0obv9fpVWtao8YKFEroZMOmvu8Sq2+9aTNGEQRp2OojOxuu+DjZInJlUDFhq6trmV3kpZH2BF7cNRxiZQpQ2FEmlr6ZpYN38GhcIUKdxXqVwXiASJi6j+vz6QdpaOGCs5lQC3VhM5sn49MFXNUrFU=
- bucket: rustdoc
- endpoint: "rustdoc.s3-website-us-east-1.amazonaws.com"
- skip_cleanup: true
- local-dir: target/doc
- upload-dir: nix/${TRAVIS_BRANCH}/${TRAVIS_OS_NAME}
- acl: public_read
- on:
- condition: "\"$TRAVIS_RUST_VERSION/$ARCH\" == \"1.1.0/x86_64\""
- repo: carllerche/nix-rust
- branch:
- - master
+
+#
+# Build/Test/Deploy Steps
+#
+before_script:
+ - pip install 'travis-cargo<0.2' --user
+
+script:
+ - bash ci/run-travis.sh
+ - |
+ if [ "$TRAVIS_OS_NAME" = "linux" ]; then
+ travis-cargo --only stable doc
+ fi
+
+after_success:
+ - |
+ if [ "$TRAVIS_OS_NAME" = "linux" ] && \
+ [ "$TRAVIS_RUST_VERSION" = "stable" ] && \
+ [ "$ARCH" = "x86_64" ]; then
+ # Upload docs for stable (on master) to gh-pages
+ travis-cargo --only stable doc-upload
+ # Measure code coverage using kcov and upload to coveralls.io
+ travis-cargo coveralls --no-sudo --verify
+ fi