@@ -37,6 +37,8 @@ var_5: &only_release_branches
37
37
- main
38
38
- /\d+\.\d+\.x/
39
39
40
+ var_6 : &all_e2e_subsets ['npm', 'esbuild', 'yarn']
41
+
40
42
# Executor Definitions
41
43
# https://circleci.com/docs/2.0/reusing-config/#authoring-reusable-executors
42
44
executors :
@@ -207,14 +209,18 @@ jobs:
207
209
- run : yarn -s admin validate
208
210
- run : yarn -s check-tooling-setup
209
211
210
- e2e-cli :
212
+ e2e-tests :
211
213
parameters :
212
214
nodeversion :
213
215
type : string
214
216
default : *default_nodeversion
215
217
snapshots :
216
218
type : boolean
217
219
default : false
220
+ subset :
221
+ type : enum
222
+ enum : *all_e2e_subsets
223
+ default : ' npm'
218
224
executor :
219
225
name : test-executor
220
226
nodeversion : << parameters.nodeversion >>
@@ -223,21 +229,31 @@ jobs:
223
229
- custom_attach_workspace
224
230
- browser-tools/install-chrome
225
231
- initialize_env
226
- - run :
227
- name : Execute CLI E2E Tests
228
- command : |
229
- mkdir /mnt/ramdisk/e2e-main
230
- node ./tests/legacy-cli/run_e2e --nb-shards=${CIRCLE_NODE_TOTAL} --shard=${CIRCLE_NODE_INDEX} <<# parameters.snapshots >>--ng-snapshots<</ parameters.snapshots >> --tmpdir=/mnt/ramdisk/e2e-main
231
- - run :
232
- name : Execute CLI E2E Tests Subset with Yarn
233
- command : |
234
- mkdir /mnt/ramdisk/e2e-yarn
235
- node ./tests/legacy-cli/run_e2e --nb-shards=${CIRCLE_NODE_TOTAL} --shard=${CIRCLE_NODE_INDEX} <<# parameters.snapshots >>--ng-snapshots<</ parameters.snapshots >> --yarn --tmpdir=/mnt/ramdisk/e2e-yarn --glob="{tests/basic/**,tests/update/**,tests/commands/add/**}"
236
- - run :
237
- name : Execute CLI E2E Tests Subset with esbuild builder
238
- command : |
239
- mkdir /mnt/ramdisk/e2e-esbuild
240
- node ./tests/legacy-cli/run_e2e --nb-shards=${CIRCLE_NODE_TOTAL} --shard=${CIRCLE_NODE_INDEX} <<# parameters.snapshots >>--ng-snapshots<</ parameters.snapshots >> --esbuild --tmpdir=/mnt/ramdisk/e2e-esbuild --glob="{tests/basic/**,tests/build/prod-build.ts,tests/build/relative-sourcemap.ts,tests/build/styles/scss.ts,tests/build/styles/include-paths.ts,tests/commands/add/add-pwa.ts}" --ignore="tests/basic/{environment,rebuild,serve,scripts-array}.ts"
232
+ - run : mkdir /mnt/ramdisk/e2e
233
+ - when :
234
+ condition :
235
+ equal : ['npm', << parameters.subset >>]
236
+ steps :
237
+ - run :
238
+ name : Execute CLI E2E Tests with NPM
239
+ command : |
240
+ node ./tests/legacy-cli/run_e2e --nb-shards=${CIRCLE_NODE_TOTAL} --shard=${CIRCLE_NODE_INDEX} <<# parameters.snapshots >>--ng-snapshots<</ parameters.snapshots >> --tmpdir=/mnt/ramdisk/e2e
241
+ - when :
242
+ condition :
243
+ equal : ['esbuild', << parameters.subset >>]
244
+ steps :
245
+ - run :
246
+ name : Execute CLI E2E Tests Subset with Esbuild
247
+ command : |
248
+ node ./tests/legacy-cli/run_e2e --nb-shards=${CIRCLE_NODE_TOTAL} --shard=${CIRCLE_NODE_INDEX} <<# parameters.snapshots >>--ng-snapshots<</ parameters.snapshots >> --esbuild --tmpdir=/mnt/ramdisk/e2e --glob="{tests/basic/**,tests/build/prod-build.ts,tests/build/relative-sourcemap.ts,tests/build/styles/scss.ts,tests/build/styles/include-paths.ts,tests/commands/add/add-pwa.ts}" --ignore="tests/basic/{environment,rebuild,serve,scripts-array}.ts"
249
+ - when :
250
+ condition :
251
+ equal : ['yarn', << parameters.subset >>]
252
+ steps :
253
+ - run :
254
+ name : Execute CLI E2E Tests Subset with Yarn
255
+ command : |
256
+ node ./tests/legacy-cli/run_e2e --nb-shards=${CIRCLE_NODE_TOTAL} --shard=${CIRCLE_NODE_INDEX} <<# parameters.snapshots >>--ng-snapshots<</ parameters.snapshots >> --yarn --tmpdir=/mnt/ramdisk/e2e --glob="{tests/basic/**,tests/update/**,tests/commands/add/**}"
241
257
- fail_fast
242
258
243
259
test-browsers :
@@ -359,22 +375,37 @@ workflows:
359
375
requires :
360
376
- setup
361
377
362
- - e2e-cli :
363
- name : e2e-cli
378
+ - e2e-tests :
379
+ name : e2e-cli-<< matrix.subset >>
364
380
nodeversion : ' 14.15'
381
+ matrix :
382
+ parameters :
383
+ subset : *all_e2e_subsets
384
+ filters :
385
+ branches :
386
+ ignore :
387
+ - main
388
+ - /\d+\.\d+\.x/
365
389
requires :
366
390
- build
367
391
368
- - e2e-cli :
369
- name : e2e-cli-node-16
370
- nodeversion : ' 16.10'
371
- << : *only_release_branches
392
+ - e2e-tests :
393
+ name : e2e-cli-node-<<matrix.nodeversion>>-<< matrix.subset >>
394
+ matrix :
395
+ alias : e2e-cli
396
+ parameters :
397
+ nodeversion : ['14.15', '16.10']
398
+ subset : *all_e2e_subsets
372
399
requires :
373
400
- build
401
+ << : *only_release_branches
374
402
375
- - e2e-cli :
376
- name : e2e-cli-ng- snapshots
403
+ - e2e-tests :
404
+ name : e2e-snapshots-<< matrix.subset >>
377
405
nodeversion : ' 16.10'
406
+ matrix :
407
+ parameters :
408
+ subset : *all_e2e_subsets
378
409
snapshots : true
379
410
pre-steps :
380
411
- when :
0 commit comments