forked from emberjs/data
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path.travis.yml
137 lines (118 loc) · 4.2 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
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
---
language: node_js
sudo: false
dist: trusty
node_js:
- '10'
addons:
chrome: stable
firefox: latest
cache:
yarn: true
branches:
only:
- master
- beta
- release
# release and LTS branches
- /^(release|lts)-.*/
# npm version tags
- /^v\d+\.\d+\.\d+/
stages:
- test
- additional tests
- ember version tests
- name: external partner tests
if: NOT tag IS present AND NOT (branch ~= /^(emberjs:release|emberjs:lts|release|lts).*/)
jobs:
fail_fast: true
allow_failures:
- name: 'Ember Data Factory Guy'
- name: 'Ember Data Model Fragments'
- name: 'Ember Data Change Tracker'
include:
# runs tests with current locked deps and linting
- stage: test
name: 'Linting'
if: NOT tag IS present AND NOT (branch ~= /^(emberjs:release|emberjs:lts|release|lts).*/)
script:
- yarn lint:features
- yarn lint:js
- yarn problems
- name: 'Basic Tests'
script: yarn test
- stage: additional tests
name: 'Enabled In-Progress Features'
if: NOT tag IS present AND NOT (branch ~= /^(emberjs:release|emberjs:lts|release|lts).*/)
install: yarn install
script: yarn test:enabled-in-progress-features
- name: 'Floating Dependencies'
install: yarn install --no-lockfile --non-interactive
script: yarn test
- name: 'Production'
install: yarn install
script: yarn test:production
- name: 'Max Transpilation'
install: yarn install
env: TARGET_IE11=true
script: yarn test
- name: 'Node Tests'
install: yarn install
script: yarn test:node
- name: 'Docs Tests'
install: yarn install
script: yarn test:docs
- name: 'Fastboot Tests'
install: yarn install
script: yarn test:fastboot
# runs tests against each supported Ember version
- stage: ember version tests
name: 'Ember LTS 3.8'
env: EMBER_TRY_SCENARIO=ember-lts-3.8
- stage: ember version tests
name: 'Ember LTS 3.12'
env: EMBER_TRY_SCENARIO=ember-lts-3.12
- name: 'Ember Release'
if: NOT tag IS present AND NOT (branch ~= /^(emberjs:release|emberjs:lts|release|lts).*/)
env: EMBER_TRY_SCENARIO=ember-release
- name: 'Ember Release with jQuery'
if: NOT (branch ~= /^(release|lts).*/)
env: EMBER_TRY_SCENARIO=ember-release-with-jquery
- name: 'Ember Beta'
if: NOT tag IS present AND NOT (branch ~= /^(emberjs:release|emberjs:lts|release|lts).*/)
env: EMBER_TRY_SCENARIO=ember-beta
- name: 'Ember Canary'
if: NOT tag IS present AND NOT (branch ~= /^(emberjs:release|emberjs:lts|release|lts).*/)
env: EMBER_TRY_SCENARIO=ember-canary
# runs tests against various open-source projects for early-warning regression analysis
# We typically have 4 concurrent jobs, these jobs below are ordered to optimize total completion time
# By running longer jobs first, we allow the shorter jobs to complete within the same time block in parallel
- stage: external partner tests
name: 'Ilios Frontend' # ~30min job
script: yarn test-external:ilios-frontend
- name: 'Travis Web' # ~10min job
script: yarn test-external:travis-web
- name: 'Ember Data Storefront' # ~5min job
script: yarn test-external:storefront
- name: 'Ember Data Factory Guy' # ~5min job
script: yarn test-external:factory-guy
- name: 'Ember Observer' # ~5min job
script: yarn test-external:ember-observer
- name: 'Ember Resource Metadata' # ~4.25min job
script: yarn test-external:ember-resource-metadata
- name: 'Ember Data Relationship Tracker' # ~4.25min job
script: yarn test-external:ember-data-relationship-tracker
- name: 'Ember Data Model Fragments' # ~3.5min job
script: yarn test-external:model-fragments
- name: 'Ember Data Change Tracker' # ~3.5min job
script: yarn test-external:ember-data-change-tracker
- name: 'ember-m3' # ~3.5min job
script: yarn test-external:ember-m3
before_install:
- curl -o- -L https://yarnpkg.com/install.sh | bash
- export PATH=$HOME/.yarn/bin:$PATH
install:
- yarn install --frozen-lockfile
- node ./bin/packages-for-commit.js
script:
- yarn test:try-one $EMBER_TRY_SCENARIO --skip-cleanup