| 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 |