forked from blackbaud/skyux2
-
Notifications
You must be signed in to change notification settings - Fork 0
/
.travis.yml
90 lines (78 loc) · 3.22 KB
/
.travis.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
language: node_js
sudo: required
# Limit the git history cloned for the tests.
# https://docs.travis-ci.com/user/customizing-the-build/#Git-Clone-Depth
git:
depth: 10
# Save the browserstack binary to a known location so we can cache it.
env:
global:
- CXX=g++-4.8
- BROWSER_STACK_BINARY_BASE_PATH=$HOME/browserstack-binary
# Run three tasks in parallel:
# https://docs.travis-ci.com/user/customizing-the-build/#Build-Matrix
matrix:
- TEST_COMMAND=build
- TEST_COMMAND=visual
- TEST_COMMAND=coverage
- TEST_COMMAND=coverage-ie-batch IE_BATCH=1of4
- TEST_COMMAND=coverage-ie-batch IE_BATCH=2of4
- TEST_COMMAND=coverage-ie-batch IE_BATCH=3of4
- TEST_COMMAND=coverage-ie-batch IE_BATCH=4of4
# https://docs.travis-ci.com/user/languages/javascript-with-nodejs#Node.js-v4-(or-io.js-v3)-compiler-requirements
addons:
apt:
sources:
- ubuntu-toolchain-r-test
packages:
- g++-4.8
- graphicsmagick
- libcairo2-dev
before_install:
# https://github.com/npm/npm/issues/11283
- npm set progress=false
- npm install -g @blackbaud/skyux-cli
- export SAVAGE_BRANCH="^savage-"
- chmod +x ./scripts/travis-script-build.sh
- chmod +x ./scripts/travis-script-coverage.sh
- chmod +x ./scripts/travis-script-coverage-ie-batch.sh
- chmod +x ./scripts/travis-script-deploy.sh
- chmod +x ./scripts/travis-script-visual.sh
- chmod +x ./scripts/travis-after-failure.sh
- chmod +x ./scripts/browserstack-cleanup.sh
- chmod +x ./scripts/browserstack-local-start.sh
- chmod +x ./scripts/visual-baseline.sh
- chmod +x ./scripts/visual-failures.sh
after_install:
- sudo cp .node_modules/@blackbaud/skyux-builder/ssl/skyux-ca.crt /usr/local/share/ca-certificates/skyux-ca.crt
- sudo update-ca-certificates
script:
- eval "./scripts/travis-script-${TEST_COMMAND}.sh"
# Run the deployment after all jobs have been successfully completed.
# https://docs.travis-ci.com/user/build-stages
jobs:
include:
- stage: deploy
env: TEST_COMMAND=none
script: ./scripts/travis-script-deploy.sh
after_failure:
- ./scripts/travis-after-failure.sh
- ./scripts/visual-failures.sh
# When a push, only care about the master, rc-, and savage- branches.
# Otherwise anytime we commit to internal branches this would run.
branches:
only:
- master
- /^rc-.*$/
- /^savage-.*$/
- /^[0-9]+\.[0-9]+\.[0-9]+.*/
# Cache a few things
cache:
directories:
- node_modules
- $BROWSER_STACK_BINARY_BASE_PATH
notifications:
slack:
secure: AJd6KPL0tpgMp+tmF6ASiKtR6CW2qSXcL8H1+OVm++94n4iekdrxPX2PH97p8gmKHoyS0/qg0uBsl+Xv5HYrHe2pTFr75wj6J9KLDL5T1H9/eSowM01ugfcVZz0Lc7VqacUg3NV6NTPiLydy/XyhchT2KPIV5oQEw5FpNXj81Udo1O5fC4jhlc5SnQuHmdSRbqhXwXpOqYlyfZDW+njzJq5rIrZAKtWJOWyDR1BRtwSCuYyqMQoOS7WIzOgau5Tvx/X1YkZVohEesj1zsYd0dLkCrujkxPSHt8i5o010zlleeabz5w9lZWXreKbvA2qqHnGrIFoXftq2zPRJl4EgSBz6zDt0uTUDmOGDPHfG21pXuDTx1bwjHrV9VkjTsSp0nEmyWgJbn7EmJDo/y1cUk2+fkmuzTgn4wUqNfTMqGrQh8BKMzLG9wU3UxlHtKLgVqkeVNuEu0iZEIpcAAIbDHYbxYkUOr7pjmm/F1h/b3pojHC91UB6mdzJpSjfTCFlQsRwb2bASEvyTxuDex1bEHBnuK/kk+TeBgIplBXzBsQiEauj8mWeCmBXPaxNIagfsT4nVtBNW6ZsCoRpJC3t9CDI1DIkDtZKcxc4/KmMskunVmOliQyTY2tT86tyo1VpcZ3BI4TOd3sLwpeCX4SW25Y80N7vnXSBlaoU5JTcoUSo=
webhooks:
- http://sky-savage.cloudapp.net:6262/savage/travis