deno/.travis.yml

44 lines
1.5 KiB
YAML
Raw Normal View History

language: c++
2018-06-19 10:54:24 +00:00
branches:
only:
- master
cache:
2018-05-29 09:08:11 +00:00
ccache: true
directories:
2018-06-19 10:54:24 +00:00
- $DEPOT_TOOLS_PATH
- $BUILD_PATH
2018-05-23 18:29:14 +00:00
env:
global:
2018-06-19 10:54:24 +00:00
- BUILD_PATH=$HOME/out/Default
- DEPOT_TOOLS_PATH=$HOME/depot_tools
2018-05-23 18:29:14 +00:00
before_install: |
2018-06-19 10:54:24 +00:00
if ! [ -x $DEPOT_TOOLS_PATH/gclient ]; then
rm -rf $DEPOT_TOOLS_PATH
git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git $DEPOT_TOOLS_PATH
2018-05-23 18:29:14 +00:00
fi
2018-05-14 07:06:09 +00:00
install:
2018-06-19 10:54:24 +00:00
- export PATH=$PATH:$DEPOT_TOOLS_PATH
# Sync dependencies.
# TODO(ry) These sync steps are very terrible and only here temporarily.
# rustc should be added to deno_third_party. Ultimately Deno *should not*
# depend on yarn, gclient, rustup, cargo, nor any internet connection.
2018-06-19 10:54:24 +00:00
- curl -sSf https://sh.rustup.rs | sh -s -- -y
- export PATH=$HOME/.cargo/bin:$PATH
- rustc --version
2018-07-13 07:24:07 +00:00
# TODO(ry) Do not depend on run_hooks because it calls
# //third_party/depot_tools/download_from_google_storage.py
# Use git lfs and combine run_hooks with sync_third_party?
2018-07-13 07:24:07 +00:00
- ./tools/run_hooks.py
2018-06-19 10:54:24 +00:00
# ccache needs the custom LLVM to be in PATH and other variables.
- export PATH=`pwd`/third_party/llvm-build/Release+Asserts/bin:$PATH
- export CCACHE_CPP2=yes
- export CCACHE_SLOPPINESS=time_macros
- ccache -s
2018-06-19 10:54:24 +00:00
# is_debug, use_allocator, and ccache are used to speed travis.
# use_custom_libcxx=false and use_sysroot=false seem to be required to build on
# Ubuntu 14.04
- ./tools/build.py --build_path=$BUILD_PATH --args='is_debug=false use_allocator="none" use_custom_libcxx=false use_sysroot=false'
2018-05-14 07:06:09 +00:00
script:
- ./tools/lint.py
2018-07-21 23:08:24 +00:00
- ./tools/test.py $BUILD_PATH