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 # 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 - 'gclient config --spec=''solutions = [ { "name": ".", "url": "git@github.com:dart-lang/sdk.git", "deps_file": "DEPS", "managed": False, "custom_vars": { "dart_root": "." } } ]''' - if [ "$CXX" ]; then gclient sync ; fi # If a C++ compiler is set, built the SDK - else keep the preinstalled. - 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 CHROME_CANARY_BIN=`./tool/get_chrome_canary.sh` - export DISPLAY=:99.0 - sh -e /etc/init.d/xvfb start 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 env: - ANALYZER=master - ANALYZER=master DDC_BROWSERS=Firefox - ANALYZER=master CXX=g++ - ANALYZER=master CXX=clang++ - TEST=coverage - TEST=node matrix: allow_failures: - env: TEST=node - env: ANALYZER=master DDC_BROWSERS=Firefox - env: ANALYZER=master CXX=clang++ - env: ANALYZER=master CXX=g++ notifications: email: recipients: - dev-compiler+buildbot@dartlang.org on_failure: change