@@ -4,60 +4,47 @@ workflows:
44 tests :
55 jobs : &workflow_jobs
66 - node6 :
7- filters :
7+ filters : &all_commits
88 tags :
99 only : /.*/
1010 - node8 :
11- filters :
12- tags :
13- only : /.*/
11+ filters : *all_commits
1412 - node10 :
15- filters :
16- tags :
17- only : /.*/
13+ filters : *all_commits
1814 - lint :
1915 requires :
2016 - node6
2117 - node8
2218 - node10
23- filters :
24- tags :
25- only : /.*/
19+ filters : *all_commits
2620 - docs :
2721 requires :
2822 - node6
2923 - node8
3024 - node10
31- filters :
32- tags :
33- only : /.*/
25+ filters : *all_commits
3426 - system_tests :
3527 requires :
3628 - lint
3729 - docs
38- filters :
30+ filters : &master_and_releases
3931 branches :
4032 only : master
41- tags :
33+ tags : &releases
4234 only : ' /^v[\d.]+$/'
4335 - sample_tests :
4436 requires :
4537 - lint
4638 - docs
47- filters :
48- branches :
49- only : master
50- tags :
51- only : ' /^v[\d.]+$/'
39+ filters : *master_and_releases
5240 - publish_npm :
5341 requires :
5442 - system_tests
5543 - sample_tests
5644 filters :
5745 branches :
5846 ignore : /.*/
59- tags :
60- only : ' /^v[\d.]+$/'
47+ tags : *releases
6148 nightly :
6249 triggers :
6350 - schedule :
7057 node6 :
7158 docker :
7259 - image : ' node:6'
60+ user : node
7361 steps : &unit_tests_steps
7462 - checkout
7563 - run : &remove_package_lock
@@ -84,25 +72,29 @@ jobs:
8472 echo "Not a nightly build, skipping this step."
8573 fi
8674 - run : &npm_install_and_link
87- name : Install and link the module.
88- command : npm install
75+ name : Install and link the module
76+ command : |-
77+ mkdir -p /home/node/.npm-global
78+ npm install
79+ environment :
80+ NPM_CONFIG_PREFIX : /home/node/.npm-global
8981 - run : npm test
9082 - run : node_modules/.bin/codecov
83+
9184 node8 :
9285 docker :
9386 - image : ' node:8'
94- steps : *unit_tests_steps
95- node9 :
96- docker :
97- - image : ' node:9'
87+ user : node
9888 steps : *unit_tests_steps
9989 node10 :
10090 docker :
10191 - image : ' node:10'
92+ user : node
10293 steps : *unit_tests_steps
10394 lint :
10495 docker :
10596 - image : ' node:8'
97+ user : node
10698 steps :
10799 - checkout
108100 - run : *remove_package_lock
@@ -111,14 +103,19 @@ jobs:
111103 name : Link the module being tested to the samples.
112104 command : |
113105 cd samples/
114- npm install
115106 npm link ../
107+ npm install
108+ environment :
109+ NPM_CONFIG_PREFIX : /home/node/.npm-global
116110 - run :
117111 name : Run linting.
118112 command : npm run lint
113+ environment :
114+ NPM_CONFIG_PREFIX : /home/node/.npm-global
119115 docs :
120116 docker :
121117 - image : ' node:8'
118+ user : node
122119 steps :
123120 - checkout
124121 - run : *remove_package_lock
@@ -129,6 +126,7 @@ jobs:
129126 sample_tests :
130127 docker :
131128 - image : ' node:8'
129+ user : node
132130 steps :
133131 - checkout
134132 - run : *remove_package_lock
@@ -145,15 +143,17 @@ jobs:
145143 command : npm run samples-test
146144 environment :
147145 GCLOUD_PROJECT : long-door-651
148- GOOGLE_APPLICATION_CREDENTIALS : /var/language/.circleci/key.json
146+ GOOGLE_APPLICATION_CREDENTIALS : /home/node/samples/.circleci/key.json
147+ NPM_CONFIG_PREFIX : /home/node/.npm-global
149148 - run :
150149 name : Remove unencrypted key.
151150 command : rm .circleci/key.json
152151 when : always
153- working_directory : /var/language /
152+ working_directory : /home/node/samples /
154153 system_tests :
155154 docker :
156155 - image : ' node:8'
156+ user : node
157157 steps :
158158 - checkout
159159 - run : *remove_package_lock
@@ -176,7 +176,8 @@ jobs:
176176 publish_npm :
177177 docker :
178178 - image : ' node:8'
179+ user : node
179180 steps :
180181 - checkout
181182 - run : ' echo "//registry.npmjs.org/:_authToken=${NPM_TOKEN}" > ~/.npmrc'
182- - run : npm publish
183+ - run : npm publish --access=public
0 commit comments