blob: aea947ff05136d0b045e7290ea58c476813f0793 [file] [log] [blame]
language: dart
dart:
- dev
# Gives more resources on Travis (8GB Ram, 2 CPUs).
# Do not remove without verifying w/ Travis.
sudo: required
# Build stages: https://docs.travis-ci.com/user/build-stages/.
stages:
- presubmit
- testing
- coverage
# 1. Run dartfmt, dartanalyzer.
# 2. Then run tests compiled via dartdevc and dart2js.
# 3. Run the coverage script/tool.
jobs:
include:
# presubmit: Check things that should fail fast(er).
- stage: presubmit
env: SHARD=dartfmt
script: ./tool/travis/task.sh dartfmt
- stage: presubmit
env: SHARD=dartanalyzer
script: ./tool/travis/task.sh dartanalyzer
# testing: Run test suites (Dart VM, Dart2JS).
- stage: testing
env: SHARD=vm_test
script: ./tool/travis/task.sh vm_test
- stage: testing
env: SHARD=dart2js_test
addons:
chrome: stable
services:
- xvfb
script: ./tool/travis/task.sh dart2js_test
- stage: testing
env: SHARD=dartdevc_test
addons:
chrome: stable
cache:
directories:
- .dart_tool
services:
- xvfb
script: ./tool/travis/task.sh dartdevc_test
# coverage.
- stage: coverage
env: SHARD=coveralls
install:
- gem install coveralls-lcov
script: ./tool/travis/coverage.sh
# Only building master means that we don't run two builds for each pull request.
branches:
only: [master]
# Incremental pub cache and builds.
cache:
directories:
- $HOME/.pub-cache