language: c++ matrix: include: - os: linux env: BENCHMARK=1 - os: osx env: global: - CARGO_PATH=$HOME/.cargo/ - RUSTUP_PATH=$HOME/.rustup/ - DENO_BUILD_ARGS="use_custom_libcxx=false use_sysroot=false" - DENO_BUILD_PATH=$HOME/out/Default - DENO_BUILD_MODE=release - PATH=$TRAVIS_BUILD_DIR/third_party/llvm-build/Release+Asserts/bin:$CARGO_PATH/bin:$PATH - CCACHE_CPP2=yes - CCACHE_SLOPPINESS=time_macros cache: ccache: true directories: - "$CARGO_PATH" - "$RUSTUP_PATH" - third_party/v8/build/linux/debian_sid_amd64-sysroot/ - third_party/v8/third_party/llvm-build/ install: - |- # Install Rust. # TODO(ry) Include rustc in third_party. # https://github.com/denoland/deno/issues/386 if [ ! $(which rustc) ]; then curl -sSf https://sh.rustup.rs | sh -s -- -y fi rustc --version cargo --version - |- # Install Hyperfine (if benchmarking is enabled for this build). if [ $BENCHMARK ]; then if [ ! $(which hyperfine) ]; then cargo install hyperfine fi hyperfine --version fi - |- # Install ccache (OS X only). # TODO: Save ccache in the Travis CI cache. if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then brew install ccache && export PATH="/usr/local/opt/ccache/libexec:$PATH" fi before_script: - ccache -s - ./tools/setup.py script: - ./tools/lint.py - bash -c "sleep 2100; pkill ninja" & - ./tools/build.py -j2 - ./tools/test.py $DENO_BUILD_PATH after_success: - | # Run benchmarks and publish the result to github pages. if [ $BENCHMARK ]; then ./tools/benchmark.py $DENO_BUILD_PATH && cp -r website/* gh-pages/ fi before_deploy: - gzip -c $DENO_BUILD_PATH/deno > $DENO_BUILD_PATH/deno_${TRAVIS_OS_NAME}_x64.gz deploy: - provider: releases api_key: &github-token secure: RIwv515oDcPAlEvt7uG8FeSFi6Tz6ODJUOXcFj6FYUPszxJ7Cg1kBLKln+fNW5OeOc52VsaZb/vPZ85skyEM6zk2ijL9FcSnnfNEm548w77iH6G0sk09NgBTy6KRXES6NZHD9jN1YTWYkT2G1NQi7mLqxR8a8pnWTbeK5HhtSWGsZPtXqf5iQbvnWsmKA0/w+FIgKupU0xe/qsYjh0eMLYpZDUWoKO0VxBKJ/ix5Uz91aJTjMIcHHij+ALg4pk+FkDotdyx39XB9b25KDxGuaI7NxWjSPzDxs/ZBHP6QYDLO0ti93ftvLAxRoBKPFoZrXqAu3KG9anr9WvxE40DO9OdV0VX2ZUatMUQm3DpSheN8ml2sErFqjIInqlpkdOVDYORz7FikPxkb9DKt+iuyFfxPRa4YWJv2tg8+Hy/nRCQw69OoKqrSNJ8KJDB3OjYbRBtdHz79RLJhTsGZla6RiyXfM7crR7CbFjbwdbW3Pt60t24fhvXQ0SwR0QTgzS/ieYEQHq/9GtSQA/Tn4kdIkyN6BdOMrQd/aUtgKmNdqbSlfmWGNyNZIxHdB+3RrTNT1tagkRI4UHEUfEujpIdYKwLjv0Xmi/VtTM+zOSkzHsIWGPfHBmIGnXfAItUHqivQYJ15E+dzg3T1CEbBxkDQtvwien9Fa8/pBsMkyovl8ps= file: "$DENO_BUILD_PATH/deno_${TRAVIS_OS_NAME}_x64.gz" on: tags: true repo: denoland/deno skip-cleanup: true - provider: pages condition: $BENCHMARK == 1 github-token: *github-token keep-history: true local-dir: gh-pages on: branch: master repo: denoland/deno skip-cleanup: true