language: node_js sudo: false node_js: - '6.9.5' addons: # firefox: "38.0" apt: sources: # needed to install g++ that is used by npms's native modules - ubuntu-toolchain-r-test packages: # needed to install g++ that is used by npms's native modules - g++-4.8 # https://docs.travis-ci.com/user/jwt jwt: # SAUCE_ACCESS_KEY<=secret for NGBUILDS_IO_KEY to work around travis-ci/travis-ci#7223, unencrypted value in valentine as NGBUILDS_IO_KEY> # we alias NGBUILDS_IO_KEY to $SAUCE_ACCESS_KEY in env.sh and set the SAUCE_ACCESS_KEY there - secure: "L7nrZwkAtFtYrP2DykPXgZvEKjkv0J/TwQ/r2QGxFTaBq4VZn+2Dw0YS7uCxoMqYzDwH0aAOqxoutibVpk8Z/16nE3tNmU5RzltMd6Xmt3qU2f/JDQLMo6PSlBodnjOUsDHJgmtrcbjhqrx/znA237BkNUu6UZRT7mxhXIZpn0U=" branches: except: - g3 cache: yarn: true directories: - ./node_modules - ./.chrome/chromium - ./aio/node_modules env: global: # GITHUB_TOKEN_ANGULAR= # This is needed for the e2e Travis matrix task to publish packages to github for continuous packages delivery. - secure: "aCdHveZuY8AT4Jr1JoJB4LxZsnGWRe/KseZh1YXYe5UtufFCtTVHvUcLn0j2aLBF0KpdyS+hWf0i4np9jthKu2xPKriefoPgCMpisYeC0MFkwbmv+XlgkUbgkgVZMGiVyX7DCYXVahxIoOUjVMEDCbNiHTIrfEuyq24U3ok2tHc=" # FIREBASE_TOKEN # This is needed for publishing builds to the "aio-staging" and "angular-io" firebase projects. # This token was generated using the aio-deploy@angular.io account using `firebase login:ci` and password from valentine - secure: "L5CyQmpwWtoR4Qi4xlWQh/cL1M6ZeJL4W4QAr4HdKFMgYt9h+Whqkymyh2NxwmCbPvWa7yUd+OiLQUDCY7L2VIg16hTwoe2CgYDyQA0BEwLzxtRrJXl93TfwMlrUx5JSIzAccD6D4sjtz8kSFMomK2Nls33xOXOukwyhVMjd0Cg=" # ANGULAR_PAYLOAD_FIREBASE_TOKEN # This is for payload size data # TODO(i): the token was generated using the tinagao@google account, we should switch to a shared/role-base account. - secure: "gx0VkaVIAgPt2YZIaNomVgBx8u/5lvVsLTZSkPu8AM0Wdpzy06yKhAO2x56oI51y3FFSLssVw1JEJ9BEL8osnATk0+e6ERL9OZl6fgbf/6WgBBz4wDzMaQ5+yYWGJfwY5AzZdbYUWfh3wVIhH+Q03WmnJgcnnLUaty+YeUFa2Os=" matrix: # Order: a slower build first, so that we don't occupy an idle travis worker waiting for others to complete. - CI_MODE=e2e - CI_MODE=e2e_2 - CI_MODE=js - CI_MODE=saucelabs_required - CI_MODE=browserstack_required - CI_MODE=saucelabs_optional - CI_MODE=browserstack_optional - CI_MODE=docs_test - CI_MODE=aio - CI_MODE=aio_e2e matrix: fast_finish: true allow_failures: - env: "CI_MODE=saucelabs_optional" - env: "CI_MODE=browserstack_optional" - env: "CI_MODE=aio_e2e" before_install: # source the env.sh script so that the exported variables are available to other scripts later on - source ./scripts/ci/env.sh print install: - ./scripts/ci/install.sh script: - ./scripts/ci/build.sh - ./scripts/ci/test.sh # deploy is part of 'script' and not 'after_success' so that we fail the build if the deployment fails - ./scripts/ci/deploy.sh - ./scripts/ci/angular.sh # all the scripts under this line will not quickly abort in case ${TRAVIS_TEST_RESULT} is 1 (job failure) - ./scripts/ci/cleanup.sh - ./scripts/ci/print-logs.sh