10
10
version : 2.1
11
11
12
12
orbs :
13
- browser-tools :
circleci/[email protected]
14
13
devinfra :
angular/[email protected]
15
14
16
15
parameters :
@@ -24,7 +23,6 @@ parameters:
24
23
# Windows needs its own cache key because binaries in node_modules are different.
25
24
# See https://circleci.com/docs/2.0/caching/#restoring-cache for how prefixes work in CircleCI.
26
25
var_1 : &cache_key v1-angular_devkit-16.14-{{ checksum "yarn.lock" }}
27
- var_1_win : &cache_key_win v1-angular_devkit-win-16.14-{{ checksum "yarn.lock" }}
28
26
var_3 : &default_nodeversion '18.13'
29
27
var_3_major : &default_nodeversion_major '18'
30
28
# The major version of node toolchains. See tools/toolchain_info.bzl
@@ -89,16 +87,6 @@ executors:
89
87
working_directory : ~/ng
90
88
resource_class : xlarge
91
89
92
- windows-executor :
93
- # Same as https://circleci.com/orbs/registry/orb/circleci/windows, but named.
94
- working_directory : ~/ng
95
- resource_class : windows.large
96
- shell : powershell.exe -ExecutionPolicy Bypass
97
- machine :
98
- # Contents of this image:
99
- # https://circleci.com/developer/machine/image/windows-server-2022-gui
100
- image : ' windows-server-2022-gui:current'
101
-
102
90
# Command Definitions
103
91
# https://circleci.com/docs/2.0/reusing-config/#authoring-reusable-commands
104
92
commands :
@@ -123,30 +111,12 @@ commands:
123
111
base_revision : << pipeline.git.base_revision >>
124
112
head_revision : << pipeline.git.revision >>
125
113
126
- rebase_pr_win :
127
- steps :
128
- - devinfra/rebase-pr-on-target-branch :
129
- base_revision : << pipeline.git.base_revision >>
130
- head_revision : << pipeline.git.revision >>
131
- # Use `bash.exe` as Shell because the CircleCI-orb command is an
132
- # included Bash script and expects Bash as shell.
133
- shell : bash.exe
134
-
135
114
custom_attach_workspace :
136
115
description : Attach workspace at a predefined location
137
116
steps :
138
117
- attach_workspace :
139
118
at : *workspace_location
140
119
141
- setup_windows :
142
- steps :
143
- - initialize_env
144
- - run : nvm install 18.13.0
145
- - run : nvm use 18.13.0
146
- -
run :
npm install -g [email protected] @bazel/bazelisk@${BAZELISK_VERSION}
147
- - run : node --version
148
- - run : yarn --version
149
-
150
120
setup_bazel_rbe :
151
121
parameters :
152
122
key :
@@ -265,50 +235,6 @@ jobs:
265
235
command : yarn admin snapshots --verbose
266
236
- fail_fast
267
237
268
- # Windows jobs
269
- e2e-cli-win :
270
- executor : windows-executor
271
- parallelism : 12
272
- steps :
273
- - checkout
274
- - setup_windows
275
- - rebase_pr_win
276
- - setup_bazel_rbe
277
- - restore_cache :
278
- keys :
279
- - *cache_key_win
280
- - run :
281
- # We use Arsenal Image Mounter (AIM) instead of ImDisk because of: https://github.com/nodejs/node/issues/6861
282
- # Useful resources for AIM: http://reboot.pro/index.php?showtopic=22068
283
- name : ' Arsenal Image Mounter (RAM Disk)'
284
- command : |
285
- pwsh ./.circleci/win-ram-disk.ps1
286
- - run : yarn install --frozen-lockfile --cache-folder ~/.cache/yarn
287
- - save_cache :
288
- key : *cache_key_win
289
- paths :
290
- - ~/.cache/yarn
291
- # Path where Arsenal Image Mounter files are downloaded.
292
- # Must match path in .circleci/win-ram-disk.ps1
293
- - ./aim
294
- - run :
295
- name : Execute E2E Tests
296
- environment :
297
- # Required by `yarn ng-dev`
298
- # See https://github.com/angular/angular/issues/46858
299
- PWD : .
300
- command : |
301
- mkdir X:/ramdisk/e2e
302
- bazel test --define=E2E_TEMP=X:/ramdisk/e2e --define=E2E_SHARD_TOTAL=$env:CIRCLE_NODE_TOTAL --define=E2E_SHARD_INDEX=$env:CIRCLE_NODE_INDEX --config=e2e //tests/legacy-cli:e2e.npm_node18
303
- # This timeout provides time for the actual tests to timeout and report status
304
- # instead of CircleCI stopping the job without test failure information.
305
- no_output_timeout : 40m
306
- - fail_fast
307
- - store_artifacts :
308
- path : dist/testlogs/tests/legacy-cli/e2e.npm_node18
309
- - store_test_results :
310
- path : dist/testlogs/tests/legacy-cli/e2e.npm_node18
311
-
312
238
workflows :
313
239
version : 2
314
240
default_workflow :
@@ -346,13 +272,8 @@ workflows:
346
272
requires :
347
273
- build
348
274
349
- # Windows jobs
350
- - e2e-cli-win :
351
- << : *only_release_branches
352
-
353
275
# Publish jobs
354
276
- snapshot_publish :
355
277
<< : *only_builds_branches
356
278
requires :
357
- - setup
358
- - e2e-cli-win
279
+ - build
0 commit comments