juniper/.travis.yml
2016-10-20 20:44:28 +02:00

83 lines
3.1 KiB
YAML

language: rust
cache: cargo
rust:
- stable
- beta
- nightly
matrix:
allow_failures:
- rust: nightly
addons:
apt:
packages:
- libcurl4-openssl-dev
- libelf-dev
- libdw-dev
- binutils-dev
env:
global:
- secure: "SsepHEYRmW9ee3RhxPpqGuPigZINFfA/yOwUJFseQt4t+Zs90r1xdl3Q8eDfPlnvBsL7Rd0QQrFDO7JUaimVLlgQkUnrl62o0CYzkodp+qtocyAHS00W6WTqi8Y6E6KBxPshCl03dRLaySUfx5TqTLTIHkJ0G6vDW35k7hRrA3221lRphs5rrpvAZ21pqsDsNLH3HVo792L6A0kOtBa3ocw1pgHLxnBbArIViu2htUuFvY/TgsmVbAdlow0efw/xkcJ/p0/r5q7igLek6Iqk8udfRc7CktvoiFQ2vUnhtNtQu/zYll3Q7OUx5d+w5lhbzz2QINmsezBEisH9k1haL7dMviLPp0pn4WZed60KovO0Iqfgjy1utTaKvJVfNWYsgkfU8c9a/z2rcZOKwXNKQW2ptBrtVjaB9dk7eMoyuFCDZwNtKqvG+ZKmvMpun+R8mmx+buOmN8Vlf5ygIoGxz3nbEtlLYGVTXHfdXXqRkFIwtiYVJEO7SLRKT9pbx1E++ARsi2+y8bXJT4e4z0osYMq9EsiFUpw3J2gcshrgseqkB7UgCZ3SXuitJnJNfDAU3a3nwwS/JiAunZMNnC4rKUBbl7WbTB4Cpw7EgVOlCqcyyzlkNl3xabLzTFzLOfSHLTVX5FmGNsD21vBoS5/8ejftx9wuV3rGHxuO3i3+A3k="
script:
- cargo build --verbose
- cargo build --verbose --features iron-handlers
- cargo test --verbose --features "iron-handlers expose-test-schema"
before_deploy:
- rm -rf target/package/
- cargo package --verbose
- |
if [ "$TRAVIS_BRANCH" = master -a "$TRAVIS_PULL_REQUEST" = false -a "$TRAVIS_RUST_VERSION" = stable ]; then
set -e
cargo doc --features iron-handlers
mkdir -p ~/.ssh
openssl aes-256-cbc -K $encrypted_7258158212d8_key -iv $encrypted_7258158212d8_iv -in _build/travis-juniper.enc -out ~/.ssh/id_rsa -d
chmod 600 ~/.ssh/id_rsa
git clone --branch gh-pages git@github.com:mhallin/juniper deploy_docs
cd deploy_docs
git config user.name 'Juniper Documentation Builder'
git config user.email 'nobody@example.com'
rm -rf *
mv ../target/doc/* .
echo '<meta http-equiv="refresh" content="0; url=juniper/index.html">' > index.html
git add -A *
git commit -qm 'Update documentation for Juniper'
git push -q origin gh-pages
fi
deploy:
provider: releases
api_key:
secure: "qsMOCWmD3+y30loMSqeEZrNvy2NQaIi4TixRtu7cZyOZwal4nzHJPhozDjbm3Po59s8lH7JaIuzpVJ62bfI/BHk+ZjXU+q93cHrVqiDtf6tScOMn6TYnVcF4Af36dYKNgjOXufT01cHQXWTBUW5oEYaL7z69d7UYFhYnFo54Dd5YA5Y1vTPFEC/nLD7wdnedG1y6V0vAkXQ0tgMauUx6JJ6iids4QVTT6wIFiZDV0vilHqRNjM9WkFTS9JQHsOwdLN71Ry1rxm4/PukUm4Ly/Ouup2i0buJa0FdZW/1Ym1Db4CitvrnulCjSahkNMPjRaQDiuYCuEq+PiVu0n6gucNS/WlC41qLl6TGjAWGlKKCQz2KnBweGYtghLuUujBPCLpkMEDf/XH+sDfiV6S5Fe6MbgcF/zGccqXwh4LFh1MIU389ZX6UDukF3Ovx5xsE8ha84RyNgzDfT1if/vAXJXaPODxk5/KKP/pvUpvQR2hGz6KhzMTGT/WPN49uW/WAHUEze2ZwuqVH7u8JubtHuGif1PReUnGzEK3o7CUb+Cd4/X9tnKd8cJxV2qU7MFORZbmZQ5qk7VcBQ4ur3uGpenQZQyAdTEgJaznLxjOW3brZ/JDe56QrAi6WzBGrfd26kgg2GmdQq7TACSryjAD4oH6hM4JAmYpPYLn8hXlzO4FE="
file: target/package/juniper-$TRAVIS_TAG.crate
skip_cleanup: true
on:
tags: true
branch: master
condition: "$TRAVIS_RUST_VERSION = stable"
after_deploy:
- cargo publish --token "$CRATES_IO_TOKEN"
before_cache:
rm -rf target/debug/juniper*
rm -rf target/debug/libjuniper*
rm -rf target/debug/.fingerprint/juniper*
rm -rf target/release/juniper*
rm -rf target/release/libjuniper*
rm -rf target/release/.fingerprint/juniper*
rm -rf target/package/