1+ unit_tests : &unit_tests
2+ steps :
3+ - checkout
4+ - setup_remote_docker
5+ - restore_cache :
6+ key : dependency-cache-{{ checksum "package-lock.json" }}
7+ - run :
8+ name : NPM Rebuild
9+ command : npm install
10+ - run :
11+ name : Run unit tests.
12+ command : npm run ci:test
13+ canary_tests : &canary_tests
14+ steps :
15+ - checkout
16+ - setup_remote_docker
17+ - restore_cache :
18+ key : dependency-cache-{{ checksum "package-lock.json" }}
19+ - run :
20+ name : NPM Rebuild
21+ command : npm install
22+ - run :
23+ name : Install Webpack Canary
24+ command : npm i --no-save webpack@next
25+ - run :
26+ name : Run unit tests.
27+ command : npm run ci:test
28+
29+ version : 2
30+ jobs :
31+ dependency_cache :
32+ docker :
33+ - image : webpackcontrib/circleci-node-base:latest
34+ steps :
35+ - checkout
36+ - setup_remote_docker
37+ - restore_cache :
38+ key : dependency-cache-{{ checksum "package-lock.json" }}
39+ - run :
40+ name : Install Dependencies
41+ command : npm install
42+ - save_cache :
43+ key : dependency-cache-{{ checksum "package-lock.json" }}
44+ paths :
45+ - ./node_modules
46+
47+ node8-latest :
48+ docker :
49+ - image : webpackcontrib/circleci-node8:latest
50+ steps :
51+ - checkout
52+ - setup_remote_docker
53+ - restore_cache :
54+ key : dependency-cache-{{ checksum "package-lock.json" }}
55+ - run :
56+ name : NPM Rebuild
57+ command : npm install
58+ - run :
59+ name : Run unit tests.
60+ command : npm run ci:coverage
61+ - run :
62+ name : Submit coverage data to codecov.
63+ command : bash <(curl -s https://codecov.io/bash)
64+ when : on_success
65+ node6-latest :
66+ docker :
67+ - image : webpackcontrib/circleci-node6:latest
68+ << : *unit_tests
69+ node9-latest :
70+ docker :
71+ - image : webpackcontrib/circleci-node9:latest
72+ << : *unit_tests
73+ node8-canary :
74+ docker :
75+ - image : webpackcontrib/circleci-node8:latest
76+ << : *canary_tests
77+ analysis :
78+ docker :
79+ - image : webpackcontrib/circleci-node-base:latest
80+ steps :
81+ - checkout
82+ - setup_remote_docker
83+ - restore_cache :
84+ key : dependency-cache-{{ checksum "package-lock.json" }}
85+ - run :
86+ name : NPM Rebuild
87+ command : npm install
88+ - run :
89+ name : Run linting.
90+ command : npm run lint
91+ - run :
92+ name : Run NSP Security Check.
93+ command : npm run security
94+ # - run:
95+ # name: Validate Commit Messages
96+ # command: npm run ci:lint:commits
97+ publish :
98+ docker :
99+ - image : webpackcontrib/circleci-node-base:latest
100+ steps :
101+ - checkout
102+ - setup_remote_docker
103+ - restore_cache :
104+ key : dependency-cache-{{ checksum "package-lock.json" }}
105+ - run :
106+ name : NPM Rebuild
107+ command : npm install
108+ # - run:
109+ # name: Validate Commit Messages
110+ # command: npm run release:validate
111+ - run :
112+ name : Publish to NPM
113+ command : printf "noop running conventional-github-releaser"
114+
115+ version : 2.0
116+ workflows :
117+ version : 2
118+ validate-publish :
119+ jobs :
120+ - dependency_cache
121+ - node6-latest :
122+ requires :
123+ - dependency_cache
124+ filters :
125+ tags :
126+ only : /.*/
127+ - analysis :
128+ requires :
129+ - dependency_cache
130+ filters :
131+ tags :
132+ only : /.*/
133+ - node8-latest :
134+ requires :
135+ - analysis
136+ - node6-latest
137+ filters :
138+ tags :
139+ only : /.*/
140+ - node9-latest :
141+ requires :
142+ - analysis
143+ - node6-latest
144+ filters :
145+ tags :
146+ only : /.*/
147+ - node8-canary :
148+ requires :
149+ - analysis
150+ - node6-latest
151+ filters :
152+ tags :
153+ only : /.*/
154+ - publish :
155+ requires :
156+ - node8-latest
157+ - node9-latest
158+ filters :
159+ branches :
160+ only :
161+ - master
0 commit comments