Skip to content

Commit c2776e0

Browse files
committed
chore: update cypress orb to v3 and pin node 16.16 as this is orb default
temp remove additional install command
1 parent abd408e commit c2776e0

File tree

1 file changed

+161
-112
lines changed

1 file changed

+161
-112
lines changed

.circleci/config.yml

Lines changed: 161 additions & 112 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,18 @@
1+
defaultCypressOrbConfig: &defaultCypressOrbConfig
2+
executor: cypress/default
3+
14
# https://circleci.com/docs/2.0/configuration-reference/
25
version: 2.1
36
orbs:
47
# https://github.com/cypress-io/circleci-orb
5-
cypress: cypress-io/cypress@1.29.0 # used to run e2e tests
8+
cypress: cypress-io/cypress@3.0.0 # used to run e2e tests
69
win: circleci/windows@2 # run a test job on Windows
710

811
jobs:
912
lint:
1013
description: Checks the code formatting
1114
docker:
12-
- image: cimg/node:16.9.1
15+
- image: cimg/node:16.16.0
1316
environment:
1417
# we don't need Cypress to check code styl
1518
CYPRESS_INSTALL_BINARY: '0'
@@ -20,11 +23,76 @@ jobs:
2023
name: Code style check 🧹
2124
command: npm run format:check
2225
- run: npm run check:markdown
26+
27+
install_and_persist:
28+
<<: *defaultCypressOrbConfig
29+
steps:
30+
- cypress/install
31+
- run:
32+
name: Install deps for test-apps/old-cypress-config
33+
command: npm ci
34+
working_directory: test-apps/old-cypress-config
35+
- run:
36+
name: Install deps for test-apps/new-cypress-config
37+
command: npm ci
38+
working_directory: test-apps/new-cypress-config
39+
- run: npm run check:markdown
40+
- persist_to_workspace:
41+
paths:
42+
- .cache/Cypress
43+
- project
44+
root: ~/
45+
# windows_test:
46+
# executor:
47+
# # executor comes from the "windows" orb
48+
# name: win/default
49+
# shell: bash.exe
50+
# steps:
51+
# - cypress/run:
52+
# # no-workspace: true
53+
# start-command: npm run start:windows --prefix test-apps/old-cypress-config/all-files
54+
# # wait-on: 'http://localhost:1234'
55+
# cypress-command: npx cypress run --project test-apps/old-cypress-config/all-files
56+
# # store screenshots and videos
57+
# # store_artifacts: true
58+
# post-checkout:
59+
# - run:
60+
# name: Install node 16
61+
# command: nvm install 16.16.0
62+
# - run:
63+
# name: Use node 16
64+
# command: nvm use 16.16.0
65+
# - run:
66+
# name: Install deps for code coverage
67+
# command: npm ci
68+
# post-install:
69+
# - run:
70+
# name: Install deps for test-apps/old-cypress-config
71+
# command: npm ci
72+
# working_directory: test-apps/old-cypress-config
73+
# post-steps:
74+
# # store the created coverage report folder
75+
# # you can click on it in the CircleCI UI
76+
# # to see live static HTML site
77+
# - store_artifacts:
78+
# path: test-apps/old-cypress-config/all-files/coverage
79+
# # make sure the examples captures 100% of code
80+
# - run:
81+
# name: Verify Code Coverage
82+
# command: npm run coverage:verify
83+
# working_directory: test-apps/old-cypress-config/all-files
84+
# - run:
85+
# name: Check code coverage files 📈
86+
# # we will check the final coverage report
87+
# # to make sure it only has files we are interested in
88+
# # because there are files covered at 0 in the report
89+
# command: npm i -D check-code-coverage && npm run coverage:check-files:windows
90+
# working_directory: test-apps/old-cypress-config/all-files
2391

2492
publish:
2593
description: Publishes the new version of the plugin to NPM
2694
docker:
27-
- image: cimg/node:16.9.1
95+
- image: cimg/node:16.16.0
2896
environment:
2997
# we don't need Cypress to do the release
3098
CYPRESS_INSTALL_BINARY: '0'
@@ -40,7 +108,7 @@ jobs:
40108

41109
cyrun:
42110
docker:
43-
- image: cypress/base:16.13.2
111+
- image: cypress/base:16.16.0
44112
parameters:
45113
jobname:
46114
type: string
@@ -66,13 +134,10 @@ jobs:
66134

67135
test-code-coverage-plugin:
68136
docker:
69-
- image: cypress/base:16.13.2
137+
- image: cypress/base:16.16.0
70138
steps:
71139
- attach_workspace:
72140
at: ~/
73-
- run:
74-
name: Install deps
75-
command: npm ci
76141
- run:
77142
command: npm run test
78143
- store_artifacts:
@@ -84,34 +149,19 @@ jobs:
84149
workflows:
85150
build:
86151
jobs:
87-
- cypress/install:
88-
cache-key: 'cache-{{ arch }}-{{ .Branch }}-{{ checksum "package-lock.json" }}'
89-
pre-steps:
90-
- run: npm i -g npm@latest
91-
post-install:
92-
- run:
93-
name: Install deps for test-apps/old-cypress-config
94-
command: npm ci
95-
working_directory: test-apps/old-cypress-config
96-
- run:
97-
name: Install deps for test-apps/new-cypress-config
98-
command: npm ci
99-
working_directory: test-apps/new-cypress-config
100-
post-steps:
101-
- run: npm run check:markdown
102-
152+
- install_and_persist
103153
- lint:
104154
requires:
105-
- cypress/install
155+
- install_and_persist
106156

107157
- test-code-coverage-plugin:
108158
requires:
109-
- cypress/install
159+
- install_and_persist
110160

111161
- cyrun:
112162
name: test-<< matrix.jobname>>
113163
requires:
114-
- cypress/install
164+
- install_and_persist
115165
matrix:
116166
parameters:
117167
jobname:
@@ -143,89 +193,88 @@ workflows:
143193
- new-cypress-config/unit-tests-js
144194
- new-cypress-config/use-webpack
145195

146-
- cypress/run:
147-
name: Windows test
148-
executor:
149-
# executor comes from the "windows" orb
150-
name: win/default
151-
shell: bash.exe
152-
no-workspace: true
153-
start: npm run start:windows --prefix test-apps/old-cypress-config/all-files
154-
wait-on: 'http://localhost:1234'
155-
command: npx cypress run --project test-apps/old-cypress-config/all-files
156-
# store screenshots and videos
157-
store_artifacts: true
158-
cache-key: 'cache-{{ arch }}-{{ .Branch }}-{{ checksum "package-lock.json" }}'
159-
post-checkout:
160-
- run:
161-
name: Install node 16
162-
command: nvm install 16.13.2
163-
- run:
164-
name: Use node 16
165-
command: nvm use 16.13.2
166-
- run:
167-
name: Install deps for code coverage
168-
command: npm ci
169-
post-install:
170-
- run:
171-
name: Install deps for test-apps/old-cypress-config
172-
command: npm ci
173-
working_directory: test-apps/old-cypress-config
174-
post-steps:
175-
# store the created coverage report folder
176-
# you can click on it in the CircleCI UI
177-
# to see live static HTML site
178-
- store_artifacts:
179-
path: test-apps/old-cypress-config/all-files/coverage
180-
# make sure the examples captures 100% of code
181-
- run:
182-
name: Verify Code Coverage
183-
command: npm run coverage:verify
184-
working_directory: test-apps/old-cypress-config/all-files
185-
- run:
186-
name: Check code coverage files 📈
187-
# we will check the final coverage report
188-
# to make sure it only has files we are interested in
189-
# because there are files covered at 0 in the report
190-
command: npm i -D check-code-coverage && npm run coverage:check-files:windows
191-
working_directory: test-apps/old-cypress-config/all-files
196+
# - cypress/run:
197+
# name: Windows test
198+
# executor:
199+
# # executor comes from the "windows" orb
200+
# name: win/default
201+
# shell: bash.exe
202+
# # no-workspace: true
203+
# start-command: npm run start:windows --prefix test-apps/old-cypress-config/all-files
204+
# # wait-on: 'http://localhost:1234'
205+
# cypress-command: npx cypress run --project test-apps/old-cypress-config/all-files
206+
# # store screenshots and videos
207+
# # store_artifacts: true
208+
# post-checkout:
209+
# - run:
210+
# name: Install node 16
211+
# command: nvm install 16.16.0
212+
# - run:
213+
# name: Use node 16
214+
# command: nvm use 16.16.0
215+
# - run:
216+
# name: Install deps for code coverage
217+
# command: npm ci
218+
# post-install:
219+
# - run:
220+
# name: Install deps for test-apps/old-cypress-config
221+
# command: npm ci
222+
# working_directory: test-apps/old-cypress-config
223+
# post-steps:
224+
# # store the created coverage report folder
225+
# # you can click on it in the CircleCI UI
226+
# # to see live static HTML site
227+
# - store_artifacts:
228+
# path: test-apps/old-cypress-config/all-files/coverage
229+
# # make sure the examples captures 100% of code
230+
# - run:
231+
# name: Verify Code Coverage
232+
# command: npm run coverage:verify
233+
# working_directory: test-apps/old-cypress-config/all-files
234+
# - run:
235+
# name: Check code coverage files 📈
236+
# # we will check the final coverage report
237+
# # to make sure it only has files we are interested in
238+
# # because there are files covered at 0 in the report
239+
# command: npm i -D check-code-coverage && npm run coverage:check-files:windows
240+
# working_directory: test-apps/old-cypress-config/all-files
192241

193-
- publish:
194-
filters:
195-
branches:
196-
only:
197-
- master
198-
- beta
199-
- next
200-
- dev
201-
requires:
202-
- lint
203-
- test-code-coverage-plugin
204-
- test-old-cypress-config/all-files
205-
- test-old-cypress-config/backend
206-
- test-old-cypress-config/before-all-visit
207-
- test-old-cypress-config/before-each-visit
208-
- test-old-cypress-config/exclude-files
209-
- test-old-cypress-config/frontend
210-
- test-old-cypress-config/fullstack
211-
- test-old-cypress-config/one-spec
212-
- test-old-cypress-config/same-folder
213-
- test-old-cypress-config/support-files
214-
- test-old-cypress-config/ts-example
215-
- test-old-cypress-config/unit-tests-js
216-
- test-old-cypress-config/use-webpack
217-
- test-new-cypress-config/all-files
218-
- test-new-cypress-config/backend
219-
- test-new-cypress-config/before-all-visit
220-
- test-new-cypress-config/before-each-visit
221-
- test-new-cypress-config/cra-e2e-and-ct
222-
- test-new-cypress-config/exclude-files
223-
- test-new-cypress-config/frontend
224-
- test-new-cypress-config/fullstack
225-
- test-new-cypress-config/one-spec
226-
- test-new-cypress-config/same-folder
227-
- test-new-cypress-config/support-files
228-
- test-new-cypress-config/ts-example
229-
- test-new-cypress-config/unit-tests-js
230-
- test-new-cypress-config/use-webpack
231-
- Windows test
242+
# - publish:
243+
# filters:
244+
# branches:
245+
# only:
246+
# - master
247+
# - beta
248+
# - next
249+
# - dev
250+
# requires:
251+
# - lint
252+
# - test-code-coverage-plugin
253+
# - test-old-cypress-config/all-files
254+
# - test-old-cypress-config/backend
255+
# - test-old-cypress-config/before-all-visit
256+
# - test-old-cypress-config/before-each-visit
257+
# - test-old-cypress-config/exclude-files
258+
# - test-old-cypress-config/frontend
259+
# - test-old-cypress-config/fullstack
260+
# - test-old-cypress-config/one-spec
261+
# - test-old-cypress-config/same-folder
262+
# - test-old-cypress-config/support-files
263+
# - test-old-cypress-config/ts-example
264+
# - test-old-cypress-config/unit-tests-js
265+
# - test-old-cypress-config/use-webpack
266+
# - test-new-cypress-config/all-files
267+
# - test-new-cypress-config/backend
268+
# - test-new-cypress-config/before-all-visit
269+
# - test-new-cypress-config/before-each-visit
270+
# - test-new-cypress-config/cra-e2e-and-ct
271+
# - test-new-cypress-config/exclude-files
272+
# - test-new-cypress-config/frontend
273+
# - test-new-cypress-config/fullstack
274+
# - test-new-cypress-config/one-spec
275+
# - test-new-cypress-config/same-folder
276+
# - test-new-cypress-config/support-files
277+
# - test-new-cypress-config/ts-example
278+
# - test-new-cypress-config/unit-tests-js
279+
# - test-new-cypress-config/use-webpack
280+
# - Windows test

0 commit comments

Comments
 (0)