@@ -8,59 +8,62 @@ job_common: &job_common
8
8
docker :
9
9
- << : *base_image
10
10
11
- save : &save
12
- save_cache :
13
- key : js-dependencies-{{ .Branch }}-{{ .Revision }}
14
- paths :
15
- - node_modules
11
+ restore_workspace : &restore_workspace
12
+ attach_workspace :
13
+ at : /tmp/workspace
16
14
17
- restore : &restore
18
- restore_cache :
19
- key : js-dependencies-{{ .Branch }}-{{ .Revision }}
15
+ restore_node_modules : &restore_node_modules
16
+ run :
17
+ name : Link cached node_modules to project
18
+ command : mv /tmp/workspace/node_modules ./ || true
20
19
21
20
jobs :
22
21
lockfile_update :
23
22
<< : *job_common
24
23
steps :
25
24
- checkout
26
- - << : *restore
25
+ - << : *restore_workspace
26
+ - << : *restore_node_modules
27
27
- greenkeeper-lockfile-update
28
- - << : *save
29
28
30
29
lockfile_upload :
31
30
<< : *job_common
32
31
steps :
33
32
- checkout
34
- - << : *restore
33
+ - << : *restore_workspace
34
+ - << : *restore_node_modules
35
35
- greenkeeper-lockfile-upload
36
- - << : *save
37
36
38
37
install :
39
38
<< : *job_common
40
39
steps :
41
40
- checkout
42
- - << : *restore
43
41
- run : echo "//registry.npmjs.org/:_authToken=$NPM_TOKEN" >> .npmrc
44
42
- run :
45
43
name : Install dependencies
46
44
command : |
47
45
if [ ! -d node_modules ]; then
48
46
npm install
49
47
fi
48
+ - run :
49
+ name : Copy node_modules to workspace
50
+ command : mv node_modules /tmp/
51
+ - persist_to_workspace :
52
+ root : /tmp
53
+ paths :
54
+ - node_modules
50
55
- run :
51
56
name : Save NPM install log
52
57
command : npm ls --json > /tmp/npm_install.log || true
53
58
- store_artifacts :
54
59
path : /tmp/npm_install.log
55
60
destination : npm-install
56
- - << : *save
57
-
58
-
59
61
unit_tests_and_linting :
60
62
<< : *job_common
61
63
steps :
62
64
- checkout
63
- - << : *restore
65
+ - << : *restore_workspace
66
+ - << : *restore_node_modules
64
67
- run :
65
68
name : Run eslint
66
69
command : npm run eslint -- --format junit -o reports/junit/js-lint-results.xml
81
84
- NODE_ENV : " test"
82
85
steps :
83
86
- checkout
84
- - << : *restore
87
+ - << : *restore_workspace
88
+ - << : *restore_node_modules
85
89
- run :
86
90
name : Copy and build journey test static files
87
91
command : npm run build journey /tmp/dist-test
97
101
STATIC_SERVER_PATH : /tmp/workspace/dist-test
98
102
steps :
99
103
- checkout
100
- - << : *restore
101
- - attach_workspace :
102
- at : /tmp/workspace
104
+ - << : *restore_workspace
105
+ - << : *restore_node_modules
103
106
- run :
104
107
name : Get JOURNEY_TEST_BASE_URL from Netlify deploy
105
108
command : echo "export JOURNEY_TEST_BASE_URL=$(cat /tmp/workspace/.netlifyUrl)" >> $BASH_ENV
0 commit comments