mirror of
https://github.com/dart-lang/sdk
synced 2024-11-02 10:49:00 +00:00
926df1e5b3
The bots need to run these before running the tests, so I'm porting them to Dart so they'll run on Windows. As a nice bonus, they're much faster now, I'm assuming because we use one warmed up VM for all of the packages. build_test_pkgs.sh on my machine went from ~12 seconds to ~4. R=jmesserly@google.com, vsm@google.com Review URL: https://codereview.chromium.org/2498673003 .
90 lines
2.8 KiB
YAML
90 lines
2.8 KiB
YAML
language: dart
|
|
sudo: required
|
|
dist: trusty
|
|
dart:
|
|
- dev
|
|
cache:
|
|
directories:
|
|
- $HOME/.npm
|
|
- $HOME/.nvm
|
|
- $HOME/.pub-cache/hosted
|
|
- pkg/dev_compiler/node_modules
|
|
addons:
|
|
firefox: latest
|
|
before_install:
|
|
# g++4.8.1 setup
|
|
- if [ "$CXX" == "g++" ]; then sudo add-apt-repository -y ppa:ubuntu-toolchain-r/test; fi
|
|
|
|
# clang 3.4 setup
|
|
- if [ "$CXX" == "clang++" ]; then sudo add-apt-repository -y ppa:h-rayflood/llvm; fi
|
|
|
|
- sudo apt-get update -qq
|
|
|
|
# g++4.8.1 install
|
|
- if [ "$CXX" = "g++" ]; then sudo apt-get install -qq g++-4.8; fi
|
|
- if [ "$CXX" = "g++" ]; then export CXX="g++-4.8"; fi
|
|
|
|
# clang 3.4 install
|
|
- if [ "$CXX" == "clang++" ]; then sudo apt-get install --allow-unauthenticated -qq clang-3.4; fi
|
|
- if [ "$CXX" == "clang++" ]; then export CXX="clang++-3.4"; fi
|
|
|
|
- if [ "$CXX" ]; then $CXX --version ; fi
|
|
|
|
# Chrome install
|
|
- wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
|
|
- wget https://dl.google.com/linux/direct/google-chrome-unstable_current_amd64.deb
|
|
- sudo dpkg -i google-chrome*.deb
|
|
- /usr/bin/google-chrome --version
|
|
- export CHROME_BIN=/usr/bin/google-chrome
|
|
- /usr/bin/google-chrome-unstable --version
|
|
- export CHROME_CANARY_BIN=/usr/bin/google-chrome-unstable
|
|
|
|
# Install Depot Tools
|
|
- git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git
|
|
- export PATH=`pwd`/depot_tools:"$PATH"
|
|
|
|
# Checkout everything if we're building the SDK
|
|
- cd ..
|
|
- 'gclient config --spec=''solutions = [ { "name": "sdk", "url": "git@github.com:dart-lang/sdk.git", "deps_file": "DEPS", "managed": False } ]'''
|
|
- gclient sync
|
|
- cd sdk
|
|
|
|
# If a C++ compiler is set, build the SDK - else use the preinstalled SDK instead.
|
|
- if [ "$CXX" ]; then ./tools/build.py -m release create_sdk ; fi
|
|
- if [ "$CXX" ]; then export PATH=`pwd`/out/ReleaseX64/dart-sdk/bin:"$PATH" ; fi
|
|
- dart --version
|
|
|
|
# DDC setup
|
|
- cd pkg/dev_compiler
|
|
- pub global activate dart_coveralls
|
|
- export DISPLAY=:99.0
|
|
- sh -e /etc/init.d/xvfb start
|
|
install:
|
|
# Empty to suppress default pub get behavior
|
|
before_script:
|
|
# Node modules used by DDC
|
|
- nvm install 5.5.0
|
|
- npm install
|
|
script:
|
|
# Run DDC tests
|
|
- if [[ -z "$TEST" ]]; then ./tool/presubmit.sh ; fi
|
|
- if [[ "$TEST" == coverage ]]; then ./tool/build_sdk.sh && ./tool/coverage.sh ; fi
|
|
- if [[ "$TEST" == node ]]; then ./tool/node_test.sh ; fi
|
|
- if [[ "$TEST" == package ]]; then ./tool/build_sdk.sh && ./tool/build_pkgs.dart ; fi
|
|
env:
|
|
- ANALYZER=master
|
|
- ANALYZER=master DDC_BROWSERS=Firefox
|
|
- ANALYZER=master DDC_BROWSERS=ChromeCanaryTravis
|
|
- ANALYZER=master CXX=g++
|
|
- ANALYZER=master CXX=clang++
|
|
- TEST=coverage
|
|
- TEST=package
|
|
matrix:
|
|
allow_failures:
|
|
- env: TEST=node
|
|
- env: ANALYZER=master CXX=g++
|
|
notifications:
|
|
email:
|
|
recipients:
|
|
- dev-compiler+buildbot@dartlang.org
|
|
on_failure: change
|