cargo/.travis.yml
Alex Crichton cf71ae0d45 Slight tweaks to CI
* Pass `--quiet` to all tests to have some quieter output
* Skip builds on branches other than `auto-cargo` as it's already checked
* Check the right env var for repo branches on appveyor
* Only run a few builds on PRs
2016-11-30 22:56:20 -08:00

156 lines
4.4 KiB
YAML

language: rust
rust: stable
sudo: required
dist: trusty
os: linux
services:
- docker
git:
depth: 1
matrix:
include:
# stable linux builds, tested
- env: TARGET=x86_64-unknown-linux-gnu
ALT=i686-unknown-linux-gnu
IMAGE=dist
MAKE_TARGETS="test distcheck doc install uninstall"
ALLOW_PR=1
- env: TARGET=i686-unknown-linux-gnu
IMAGE=dist
MAKE_TARGETS=test-unit-i686-unknown-linux-gnu
CFG_DISABLE_CROSS_TESTS=1
# stable osx builds, tested
- env: TARGET=x86_64-apple-darwin
ALT=i686-apple-darwin
MAKE_TARGETS="test distcheck doc install uninstall"
MACOSX_DEPLOYMENT_TARGET=10.7
os: osx
- env: TARGET=i686-apple-darwin
MAKE_TARGETS=test
MACOSX_DEPLOYMENT_TARGET=10.7
CFG_DISABLE_CROSS_TESTS=1
os: osx
# stable musl target, tested
- env: TARGET=x86_64-unknown-linux-musl
IMAGE=x86_64-musl
CFG_DISABLE_CROSS_TESTS=1
MAKE_TARGETS=test-unit-$TARGET
# cross compiled targets
- env: TARGET=arm-unknown-linux-gnueabi
IMAGE=cross
- env: TARGET=arm-unknown-linux-gnueabihf
IMAGE=cross
- env: TARGET=armv7-unknown-linux-gnueabihf
IMAGE=cross
- env: TARGET=aarch64-unknown-linux-gnu
IMAGE=cross
- env: TARGET=i686-unknown-freebsd
IMAGE=cross
- env: TARGET=x86_64-unknown-freebsd
IMAGE=cross
- env: TARGET=x86_64-unknown-netbsd
IMAGE=cross
- env: TARGET=mips-unknown-linux-gnu
IMAGE=cross
- env: TARGET=mipsel-unknown-linux-gnu
IMAGE=cross
- env: TARGET=mips64-unknown-linux-gnuabi64
IMAGE=cross
rust: beta
- env: TARGET=mips64el-unknown-linux-gnuabi64
IMAGE=cross
rust: beta
- env: TARGET=s390x-unknown-linux-gnu
IMAGE=cross
rust: beta
- env: TARGET=powerpc-unknown-linux-gnu
IMAGE=cross
rust: beta
- env: TARGET=powerpc64-unknown-linux-gnu
IMAGE=cross
rust: beta
- env: TARGET=powerpc64le-unknown-linux-gnu
IMAGE=cross
rust: beta
# beta/nightly builds
- env: TARGET=x86_64-unknown-linux-gnu
ALT=i686-unknown-linux-gnu
IMAGE=dist
MAKE_TARGETS="test distcheck doc install uninstall"
DEPLOY=0
rust: beta
- env: TARGET=x86_64-unknown-linux-gnu
ALT=i686-unknown-linux-gnu
IMAGE=dist
MAKE_TARGETS="test distcheck doc install uninstall"
DEPLOY=0
rust: nightly-2016-11-26
exclude:
- rust: stable
before_script:
- curl https://static.rust-lang.org/rustup.sh |
sh -s -- --add-target=$TARGET --disable-sudo -y --prefix=`rustc --print sysroot`
- if [ ! -z "$ALT" ]; then
curl https://static.rust-lang.org/rustup.sh |
sh -s -- --add-target=$ALT --disable-sudo -y --prefix=`rustc --print sysroot`;
fi
script:
- >
if [ "$ALLOW_PR" = "" ] && [ "$TRAVIS_BRANCH" != "auto-cargo" ]; then
echo skipping, not a full build;
elif [ "$TRAVIS_OS_NAME" = "osx" ]; then
SRC=. src/ci/run.sh $TARGET;
else
src/ci/docker/run.sh $IMAGE $TARGET;
fi
after_success: |
[ $TRAVIS_BRANCH = master ] &&
[ $TRAVIS_PULL_REQUEST = false ] &&
[ $(uname -s) = Linux ] &&
pip install ghp-import --user $USER &&
$HOME/.local/bin/ghp-import -n target/doc &&
git push -qf https://${GH_TOKEN}@github.com/${TRAVIS_REPO_SLUG}.git gh-pages
env:
global:
- DEPLOY=1
- secure: LB2o9UL90Z4CVOLVQsTbZr7ZBLA1dCLxFODuCkPkbdqG3Kl5z1yMIPMRvSbjp9KwBlIgm+Mg0R1iqphKVq+rVP5zo96K4+kEQMG+zWsPb23ZKTxiL8MK5VgCZ7s9AONCvNeCTCNAG3EyeciFr5Zr9eygVCfo0WF6JsPujYYQZx0=
notifications:
email:
on_success: never
before_deploy:
- mkdir -p deploy/$TRAVIS_COMMIT
- cp target/$TARGET/release/dist/cargo-*-$TARGET.tar.gz
deploy/$TRAVIS_COMMIT
deploy:
- provider: s3
bucket: rust-lang-cargo-dev
skip_cleanup: true
local_dir: deploy
upload_dir: cargo-master
acl: public_read
region: us-west-1
access_key_id: AKIAIWZDM2B2IJOWBGTA
secret_access_key:
secure: NB9b/MhIDiv8OtNiN/sHaFgA3xG2fa7MGuQQKJNj80ktvgByzDm5UPNyNeoYx9SmJ3jOWobgcPVaoUd2S+6XgO3bMBqm7sM/oMeE0KdqToh6+V2bKfyRF2U5fm697LEGepPIBYqMLDg4nr/dbknbKltzp6dAfJRyy22Nb721zPQ=
on:
branch: auto-cargo
condition: $DEPLOY = 1
cache:
directories:
- $HOME/.cargo
- target/openssl