language: rust cache: cargo rust: - stable - beta - nightly # Prevent accidentally breaking older Rust versions - 1.17.0 - 1.18.0 matrix: allow_failures: - rust: nightly env: global: - secure: "SsepHEYRmW9ee3RhxPpqGuPigZINFfA/yOwUJFseQt4t+Zs90r1xdl3Q8eDfPlnvBsL7Rd0QQrFDO7JUaimVLlgQkUnrl62o0CYzkodp+qtocyAHS00W6WTqi8Y6E6KBxPshCl03dRLaySUfx5TqTLTIHkJ0G6vDW35k7hRrA3221lRphs5rrpvAZ21pqsDsNLH3HVo792L6A0kOtBa3ocw1pgHLxnBbArIViu2htUuFvY/TgsmVbAdlow0efw/xkcJ/p0/r5q7igLek6Iqk8udfRc7CktvoiFQ2vUnhtNtQu/zYll3Q7OUx5d+w5lhbzz2QINmsezBEisH9k1haL7dMviLPp0pn4WZed60KovO0Iqfgjy1utTaKvJVfNWYsgkfU8c9a/z2rcZOKwXNKQW2ptBrtVjaB9dk7eMoyuFCDZwNtKqvG+ZKmvMpun+R8mmx+buOmN8Vlf5ygIoGxz3nbEtlLYGVTXHfdXXqRkFIwtiYVJEO7SLRKT9pbx1E++ARsi2+y8bXJT4e4z0osYMq9EsiFUpw3J2gcshrgseqkB7UgCZ3SXuitJnJNfDAU3a3nwwS/JiAunZMNnC4rKUBbl7WbTB4Cpw7EgVOlCqcyyzlkNl3xabLzTFzLOfSHLTVX5FmGNsD21vBoS5/8ejftx9wuV3rGHxuO3i3+A3k=" script: # Build library standalone, with Iron, and with Rocket integrations enabled, respectively - cargo build --all --verbose - cargo build --all --verbose --features iron-handlers - | if [ "$TRAVIS_RUST_VERSION" = "nightly" ]; then cargo build --all --verbose --features rocket-handlers fi # Build example binaries; first Iron, then Rocket examples - cargo build --all --verbose --example server --features "iron-handlers expose-test-schema" - | if [ "TRAVIS_RUST_VERSION" = "nightly" ]; then cargo build --all --verbose --example rocket-server --features "rocket-handlers expose-test-schema" fi # Run all tests for the base library and available integrations - export TEST_FEATURES="iron-handlers expose-test-schema" - | if [ "$TRAVIS_RUST_VERSION" = "nightly" ]; then export TEST_FEATURES="$TEST_FEATURES rocket-handlers rocket/testing" fi - cargo test --all --verbose --features "$TEST_FEATURES" before_deploy: - rm -rf target/package/ - cargo package --verbose 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/