-
Notifications
You must be signed in to change notification settings - Fork 1
/
circle.yml
81 lines (75 loc) · 1.8 KB
/
circle.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
version: 2
defaults: &defaults
working_directory: ~/zunder
docker:
- image: cypress/base:8
environment:
TERM: xterm
npm_config_loglevel: warn
jobs:
install-and-cache-deps:
<<: *defaults
steps:
- checkout
- restore_cache:
keys:
- zunder-{{ checksum "circle.yml" }}-{{ .Branch }}-{{ checksum "package-lock.json" }}
- zunder-{{ checksum "circle.yml" }}-{{ .Branch }}
- zunder-{{ checksum "circle.yml" }}-
- zunder-
- run: npm ci
- run: cd test/projects && npm ci
# run verify and then save cache. Then verified status is cached
- run: npm run cypress:verify
- save_cache:
key: zunder-{{ checksum "circle.yml" }}-{{ .Branch }}-{{ checksum "package-lock.json" }}
paths:
- ~/.npm
- ~/.cache
- persist_to_workspace:
root: ~/
paths:
- zunder/node_modules
- zunder/test/projects/node_modules
- .cache
lint:
<<: *defaults
steps:
- checkout
- attach_workspace:
at: ~/
- run: npm run lint
build:
<<: *defaults
steps:
- checkout
- attach_workspace:
at: ~/
- run: npm run build
- persist_to_workspace:
root: ~/
paths:
- zunder/dist
test:
<<: *defaults
steps:
- checkout
- attach_workspace:
at: ~/
- run: npm test -- --record
- store_artifacts:
path: npm-debug.log
workflows:
version: 2
"lint, build, & test":
jobs:
- install-and-cache-deps
- lint:
requires:
- install-and-cache-deps
- build:
requires:
- lint
- test:
requires:
- build