This repository has been archived by the owner on Sep 23, 2019. It is now read-only.
forked from noamkfir/webpack
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathconfig.yml
146 lines (140 loc) · 4.24 KB
/
config.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
138
139
140
141
142
143
144
145
146
version: 2
vm_settings: &vm_settings
docker:
# - image: circleci/node:6.14.1-browsers
- image: boundlesscode/node:6.14.1-stretch-browsers-sans-drivers
jobs:
install_template_deps:
<<: *vm_settings
working_directory: ~/project/webpack-template
steps:
- checkout
- restore_cache:
key: template-cache-{{ checksum "package.json" }}
- run:
name: Install npm dependencies
command: npm install
- save_cache:
key: template-cache-{{ checksum "package.json" }}
paths:
- node_modules
- run:
name: Rollout minimal scenario
command: VUE_TEMPL_TEST=minimal node_modules/.bin/vue init . test-minimal
- run:
name: Rollout full scenario
command: VUE_TEMPL_TEST=full node_modules/.bin/vue init . test-full
- run:
name: Rollout full-karma-airbnb scenario
command: VUE_TEMPL_TEST=full-karma-airbnb node_modules/.bin/vue init . test-full-karma-airbnb
- persist_to_workspace:
root: ~/project/webpack-template
paths:
- node_modules
- test-*
scenario_minimal:
<<: *vm_settings
environment:
- VUE_TEMPL_TEST: minimal
working_directory: ~/project/webpack-template/test-minimal
steps:
- attach_workspace:
at: '~/project/webpack-template'
- restore_cache:
key: template-cache-minimal-{{ checksum "package.json" }}
- run:
name: Install npm dependencies
command: npm install
- save_cache:
key: template-cache-minimal-{{ checksum "package.json" }}
paths:
- node_modules
- run:
name: Test build
command: npm run build
scenario_full:
<<: *vm_settings
working_directory: ~/project/webpack-template/test-full
environment:
- VUE_TEMPL_TEST: full
steps:
- attach_workspace:
at: '~/project/webpack-template'
- restore_cache:
key: template-cache-full-{{ checksum "package.json" }}
- run:
name: Install npm dependencies
command: npm install
- save_cache:
key: template-cache-full-{{ checksum "package.json" }}
paths:
- node_modules
- run:
name: Run Lint
command: npm run lint -- --fix
- run:
name: Run Unit tests
command: npm run unit
when: always
- run:
name: Run e2e tests
command: npm run e2e
when: always
- run:
name: Test build
command: npm run build
when: always
- store_artifacts:
path: ~/project/webpack-template/test-full/logs
- store_artifacts:
path: ~/project/webpack-template/test-full/tests_output
scenario_full-karma-airbnb:
<<: *vm_settings
working_directory: ~/project/webpack-template/test-full-karma-airbnb
environment:
- VUE_TEMPL_TEST: full-karma-airbnb
steps:
- attach_workspace:
at: '~/project/webpack-template'
- restore_cache:
key: template-cache-full-karma-airbnb-{{ checksum "package.json" }}
- run:
name: Install npm dependencies
command: npm install
- save_cache:
key: template-cache-full-karma-airbnb-{{ checksum "package.json" }}
paths:
- node_modules
- run:
name: Run Lint
command: npm run lint -- --fix
- run:
name: Run Unit tests
command: npm run unit
when: always
- run:
name: Run e2e tests
command: npm run e2e
when: always
- run:
name: Test build
command: npm run build
when: always
- store_artifacts:
path: ~/project/webpack-template/test-full-karma-airbnb/logs
- store_artifacts:
path: ~/project/webpack-template/test-full-karma-airbnb/tests_output
workflows:
version: 2
build_and_test:
jobs:
- install_template_deps
- scenario_minimal:
requires:
- install_template_deps
- scenario_full:
requires:
- install_template_deps
- scenario_full-karma-airbnb:
requires:
- install_template_deps