Skip to content

Commit 1850c8b

Browse files
authored
feat: update playwright DOWNLOAD_PATHS (#751)
closes #750 <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Expanded support with additional platform configurations for Ubuntu 24.04 and macOS 15 (including ARM variants). - Introduced a new Windows configuration for improved compatibility. - Updated browser configurations to deliver the latest versions across Chromium, Firefox, Webkit, FFmpeg, and Android. - **Tests** - Refined validation checks and error reporting to ensure consistent and reliable browser setups. <!-- end of auto-generated comment: release notes by coderabbit.ai -->
1 parent c70fdcc commit 1850c8b

File tree

3 files changed

+206
-76
lines changed

3 files changed

+206
-76
lines changed

app/common/adapter/binary/PlaywrightBinary.ts

+153-53
Original file line numberDiff line numberDiff line change
@@ -16,9 +16,11 @@ const DOWNLOAD_PATHS = {
1616
'ubuntu18.04-x64': undefined,
1717
'ubuntu20.04-x64': 'builds/chromium/%s/chromium-linux.zip',
1818
'ubuntu22.04-x64': 'builds/chromium/%s/chromium-linux.zip',
19+
'ubuntu24.04-x64': 'builds/chromium/%s/chromium-linux.zip',
1920
'ubuntu18.04-arm64': undefined,
2021
'ubuntu20.04-arm64': 'builds/chromium/%s/chromium-linux-arm64.zip',
2122
'ubuntu22.04-arm64': 'builds/chromium/%s/chromium-linux-arm64.zip',
23+
'ubuntu24.04-arm64': 'builds/chromium/%s/chromium-linux-arm64.zip',
2224
'debian11-x64': 'builds/chromium/%s/chromium-linux.zip',
2325
'debian11-arm64': 'builds/chromium/%s/chromium-linux-arm64.zip',
2426
'debian12-x64': 'builds/chromium/%s/chromium-linux.zip',
@@ -34,16 +36,49 @@ const DOWNLOAD_PATHS = {
3436
'mac13-arm64': 'builds/chromium/%s/chromium-mac-arm64.zip',
3537
'mac14': 'builds/chromium/%s/chromium-mac.zip',
3638
'mac14-arm64': 'builds/chromium/%s/chromium-mac-arm64.zip',
39+
'mac15': 'builds/chromium/%s/chromium-mac.zip',
40+
'mac15-arm64': 'builds/chromium/%s/chromium-mac-arm64.zip',
3741
'win64': 'builds/chromium/%s/chromium-win64.zip',
3842
},
43+
'chromium-headless-shell': {
44+
'<unknown>': undefined,
45+
'ubuntu18.04-x64': undefined,
46+
'ubuntu20.04-x64': 'builds/chromium/%s/chromium-headless-shell-linux.zip',
47+
'ubuntu22.04-x64': 'builds/chromium/%s/chromium-headless-shell-linux.zip',
48+
'ubuntu24.04-x64': 'builds/chromium/%s/chromium-headless-shell-linux.zip',
49+
'ubuntu18.04-arm64': undefined,
50+
'ubuntu20.04-arm64': 'builds/chromium/%s/chromium-headless-shell-linux-arm64.zip',
51+
'ubuntu22.04-arm64': 'builds/chromium/%s/chromium-headless-shell-linux-arm64.zip',
52+
'ubuntu24.04-arm64': 'builds/chromium/%s/chromium-headless-shell-linux-arm64.zip',
53+
'debian11-x64': 'builds/chromium/%s/chromium-headless-shell-linux.zip',
54+
'debian11-arm64': 'builds/chromium/%s/chromium-headless-shell-linux-arm64.zip',
55+
'debian12-x64': 'builds/chromium/%s/chromium-headless-shell-linux.zip',
56+
'debian12-arm64': 'builds/chromium/%s/chromium-headless-shell-linux-arm64.zip',
57+
'mac10.13': undefined,
58+
'mac10.14': undefined,
59+
'mac10.15': undefined,
60+
'mac11': 'builds/chromium/%s/chromium-headless-shell-mac.zip',
61+
'mac11-arm64': 'builds/chromium/%s/chromium-headless-shell-mac-arm64.zip',
62+
'mac12': 'builds/chromium/%s/chromium-headless-shell-mac.zip',
63+
'mac12-arm64': 'builds/chromium/%s/chromium-headless-shell-mac-arm64.zip',
64+
'mac13': 'builds/chromium/%s/chromium-headless-shell-mac.zip',
65+
'mac13-arm64': 'builds/chromium/%s/chromium-headless-shell-mac-arm64.zip',
66+
'mac14': 'builds/chromium/%s/chromium-headless-shell-mac.zip',
67+
'mac14-arm64': 'builds/chromium/%s/chromium-headless-shell-mac-arm64.zip',
68+
'mac15': 'builds/chromium/%s/chromium-headless-shell-mac.zip',
69+
'mac15-arm64': 'builds/chromium/%s/chromium-headless-shell-mac-arm64.zip',
70+
'win64': 'builds/chromium/%s/chromium-headless-shell-win64.zip',
71+
},
3972
'chromium-tip-of-tree': {
4073
'<unknown>': undefined,
4174
'ubuntu18.04-x64': undefined,
4275
'ubuntu20.04-x64': 'builds/chromium-tip-of-tree/%s/chromium-tip-of-tree-linux.zip',
4376
'ubuntu22.04-x64': 'builds/chromium-tip-of-tree/%s/chromium-tip-of-tree-linux.zip',
77+
'ubuntu24.04-x64': 'builds/chromium-tip-of-tree/%s/chromium-tip-of-tree-linux.zip',
4478
'ubuntu18.04-arm64': undefined,
4579
'ubuntu20.04-arm64': 'builds/chromium-tip-of-tree/%s/chromium-tip-of-tree-linux-arm64.zip',
4680
'ubuntu22.04-arm64': 'builds/chromium-tip-of-tree/%s/chromium-tip-of-tree-linux-arm64.zip',
81+
'ubuntu24.04-arm64': 'builds/chromium-tip-of-tree/%s/chromium-tip-of-tree-linux-arm64.zip',
4782
'debian11-x64': 'builds/chromium-tip-of-tree/%s/chromium-tip-of-tree-linux.zip',
4883
'debian11-arm64': 'builds/chromium-tip-of-tree/%s/chromium-tip-of-tree-linux-arm64.zip',
4984
'debian12-x64': 'builds/chromium-tip-of-tree/%s/chromium-tip-of-tree-linux.zip',
@@ -59,66 +94,107 @@ const DOWNLOAD_PATHS = {
5994
'mac13-arm64': 'builds/chromium-tip-of-tree/%s/chromium-tip-of-tree-mac-arm64.zip',
6095
'mac14': 'builds/chromium-tip-of-tree/%s/chromium-tip-of-tree-mac.zip',
6196
'mac14-arm64': 'builds/chromium-tip-of-tree/%s/chromium-tip-of-tree-mac-arm64.zip',
97+
'mac15': 'builds/chromium-tip-of-tree/%s/chromium-tip-of-tree-mac.zip',
98+
'mac15-arm64': 'builds/chromium-tip-of-tree/%s/chromium-tip-of-tree-mac-arm64.zip',
6299
'win64': 'builds/chromium-tip-of-tree/%s/chromium-tip-of-tree-win64.zip',
63100
},
101+
'chromium-tip-of-tree-headless-shell': {
102+
'<unknown>': undefined,
103+
'ubuntu18.04-x64': undefined,
104+
'ubuntu20.04-x64': 'builds/chromium-tip-of-tree/%s/chromium-tip-of-tree-headless-shell-linux.zip',
105+
'ubuntu22.04-x64': 'builds/chromium-tip-of-tree/%s/chromium-tip-of-tree-headless-shell-linux.zip',
106+
'ubuntu24.04-x64': 'builds/chromium-tip-of-tree/%s/chromium-tip-of-tree-headless-shell-linux.zip',
107+
'ubuntu18.04-arm64': undefined,
108+
'ubuntu20.04-arm64': 'builds/chromium-tip-of-tree/%s/chromium-tip-of-tree-headless-shell-linux-arm64.zip',
109+
'ubuntu22.04-arm64': 'builds/chromium-tip-of-tree/%s/chromium-tip-of-tree-headless-shell-linux-arm64.zip',
110+
'ubuntu24.04-arm64': 'builds/chromium-tip-of-tree/%s/chromium-tip-of-tree-headless-shell-linux-arm64.zip',
111+
'debian11-x64': 'builds/chromium-tip-of-tree/%s/chromium-tip-of-tree-headless-shell-linux.zip',
112+
'debian11-arm64': 'builds/chromium-tip-of-tree/%s/chromium-tip-of-tree-headless-shell-linux-arm64.zip',
113+
'debian12-x64': 'builds/chromium-tip-of-tree/%s/chromium-tip-of-tree-headless-shell-linux.zip',
114+
'debian12-arm64': 'builds/chromium-tip-of-tree/%s/chromium-tip-of-tree-headless-shell-linux-arm64.zip',
115+
'mac10.13': undefined,
116+
'mac10.14': undefined,
117+
'mac10.15': undefined,
118+
'mac11': 'builds/chromium-tip-of-tree/%s/chromium-tip-of-tree-headless-shell-mac.zip',
119+
'mac11-arm64': 'builds/chromium-tip-of-tree/%s/chromium-tip-of-tree-headless-shell-mac-arm64.zip',
120+
'mac12': 'builds/chromium-tip-of-tree/%s/chromium-tip-of-tree-headless-shell-mac.zip',
121+
'mac12-arm64': 'builds/chromium-tip-of-tree/%s/chromium-tip-of-tree-headless-shell-mac-arm64.zip',
122+
'mac13': 'builds/chromium-tip-of-tree/%s/chromium-tip-of-tree-headless-shell-mac.zip',
123+
'mac13-arm64': 'builds/chromium-tip-of-tree/%s/chromium-tip-of-tree-headless-shell-mac-arm64.zip',
124+
'mac14': 'builds/chromium-tip-of-tree/%s/chromium-tip-of-tree-headless-shell-mac.zip',
125+
'mac14-arm64': 'builds/chromium-tip-of-tree/%s/chromium-tip-of-tree-headless-shell-mac-arm64.zip',
126+
'mac15': 'builds/chromium-tip-of-tree/%s/chromium-tip-of-tree-headless-shell-mac.zip',
127+
'mac15-arm64': 'builds/chromium-tip-of-tree/%s/chromium-tip-of-tree-headless-shell-mac-arm64.zip',
128+
'win64': 'builds/chromium-tip-of-tree/%s/chromium-tip-of-tree-headless-shell-win64.zip',
129+
},
64130
'firefox': {
65131
'<unknown>': undefined,
66132
'ubuntu18.04-x64': undefined,
67133
'ubuntu20.04-x64': 'builds/firefox/%s/firefox-ubuntu-20.04.zip',
68134
'ubuntu22.04-x64': 'builds/firefox/%s/firefox-ubuntu-22.04.zip',
135+
'ubuntu24.04-x64': 'builds/firefox/%s/firefox-ubuntu-24.04.zip',
69136
'ubuntu18.04-arm64': undefined,
70137
'ubuntu20.04-arm64': 'builds/firefox/%s/firefox-ubuntu-20.04-arm64.zip',
71138
'ubuntu22.04-arm64': 'builds/firefox/%s/firefox-ubuntu-22.04-arm64.zip',
139+
'ubuntu24.04-arm64': 'builds/firefox/%s/firefox-ubuntu-24.04-arm64.zip',
72140
'debian11-x64': 'builds/firefox/%s/firefox-debian-11.zip',
73141
'debian11-arm64': 'builds/firefox/%s/firefox-debian-11-arm64.zip',
74142
'debian12-x64': 'builds/firefox/%s/firefox-debian-12.zip',
75143
'debian12-arm64': 'builds/firefox/%s/firefox-debian-12-arm64.zip',
76-
'mac10.13': 'builds/firefox/%s/firefox-mac-13.zip',
77-
'mac10.14': 'builds/firefox/%s/firefox-mac-13.zip',
78-
'mac10.15': 'builds/firefox/%s/firefox-mac-13.zip',
79-
'mac11': 'builds/firefox/%s/firefox-mac-13.zip',
80-
'mac11-arm64': 'builds/firefox/%s/firefox-mac-13-arm64.zip',
81-
'mac12': 'builds/firefox/%s/firefox-mac-13.zip',
82-
'mac12-arm64': 'builds/firefox/%s/firefox-mac-13-arm64.zip',
83-
'mac13': 'builds/firefox/%s/firefox-mac-13.zip',
84-
'mac13-arm64': 'builds/firefox/%s/firefox-mac-13-arm64.zip',
85-
'mac14': 'builds/firefox/%s/firefox-mac-13.zip',
86-
'mac14-arm64': 'builds/firefox/%s/firefox-mac-13-arm64.zip',
144+
'mac10.13': 'builds/firefox/%s/firefox-mac.zip',
145+
'mac10.14': 'builds/firefox/%s/firefox-mac.zip',
146+
'mac10.15': 'builds/firefox/%s/firefox-mac.zip',
147+
'mac11': 'builds/firefox/%s/firefox-mac.zip',
148+
'mac11-arm64': 'builds/firefox/%s/firefox-mac-arm64.zip',
149+
'mac12': 'builds/firefox/%s/firefox-mac.zip',
150+
'mac12-arm64': 'builds/firefox/%s/firefox-mac-arm64.zip',
151+
'mac13': 'builds/firefox/%s/firefox-mac.zip',
152+
'mac13-arm64': 'builds/firefox/%s/firefox-mac-arm64.zip',
153+
'mac14': 'builds/firefox/%s/firefox-mac.zip',
154+
'mac14-arm64': 'builds/firefox/%s/firefox-mac-arm64.zip',
155+
'mac15': 'builds/firefox/%s/firefox-mac.zip',
156+
'mac15-arm64': 'builds/firefox/%s/firefox-mac-arm64.zip',
87157
'win64': 'builds/firefox/%s/firefox-win64.zip',
88158
},
89159
'firefox-beta': {
90160
'<unknown>': undefined,
91161
'ubuntu18.04-x64': undefined,
92162
'ubuntu20.04-x64': 'builds/firefox-beta/%s/firefox-beta-ubuntu-20.04.zip',
93163
'ubuntu22.04-x64': 'builds/firefox-beta/%s/firefox-beta-ubuntu-22.04.zip',
164+
'ubuntu24.04-x64': 'builds/firefox-beta/%s/firefox-beta-ubuntu-24.04.zip',
94165
'ubuntu18.04-arm64': undefined,
95166
'ubuntu20.04-arm64': undefined,
96167
'ubuntu22.04-arm64': 'builds/firefox-beta/%s/firefox-beta-ubuntu-22.04-arm64.zip',
168+
'ubuntu24.04-arm64': 'builds/firefox-beta/%s/firefox-beta-ubuntu-24.04-arm64.zip',
97169
'debian11-x64': 'builds/firefox-beta/%s/firefox-beta-debian-11.zip',
98170
'debian11-arm64': 'builds/firefox-beta/%s/firefox-beta-debian-11-arm64.zip',
99171
'debian12-x64': 'builds/firefox-beta/%s/firefox-beta-debian-12.zip',
100172
'debian12-arm64': 'builds/firefox-beta/%s/firefox-beta-debian-12-arm64.zip',
101-
'mac10.13': 'builds/firefox-beta/%s/firefox-beta-mac-13.zip',
102-
'mac10.14': 'builds/firefox-beta/%s/firefox-beta-mac-13.zip',
103-
'mac10.15': 'builds/firefox-beta/%s/firefox-beta-mac-13.zip',
104-
'mac11': 'builds/firefox-beta/%s/firefox-beta-mac-13.zip',
105-
'mac11-arm64': 'builds/firefox-beta/%s/firefox-beta-mac-13-arm64.zip',
106-
'mac12': 'builds/firefox-beta/%s/firefox-beta-mac-13.zip',
107-
'mac12-arm64': 'builds/firefox-beta/%s/firefox-beta-mac-13-arm64.zip',
108-
'mac13': 'builds/firefox-beta/%s/firefox-beta-mac-13.zip',
109-
'mac13-arm64': 'builds/firefox-beta/%s/firefox-beta-mac-13-arm64.zip',
110-
'mac14': 'builds/firefox-beta/%s/firefox-beta-mac-13.zip',
111-
'mac14-arm64': 'builds/firefox-beta/%s/firefox-beta-mac-13-arm64.zip',
173+
'mac10.13': 'builds/firefox-beta/%s/firefox-beta-mac.zip',
174+
'mac10.14': 'builds/firefox-beta/%s/firefox-beta-mac.zip',
175+
'mac10.15': 'builds/firefox-beta/%s/firefox-beta-mac.zip',
176+
'mac11': 'builds/firefox-beta/%s/firefox-beta-mac.zip',
177+
'mac11-arm64': 'builds/firefox-beta/%s/firefox-beta-mac-arm64.zip',
178+
'mac12': 'builds/firefox-beta/%s/firefox-beta-mac.zip',
179+
'mac12-arm64': 'builds/firefox-beta/%s/firefox-beta-mac-arm64.zip',
180+
'mac13': 'builds/firefox-beta/%s/firefox-beta-mac.zip',
181+
'mac13-arm64': 'builds/firefox-beta/%s/firefox-beta-mac-arm64.zip',
182+
'mac14': 'builds/firefox-beta/%s/firefox-beta-mac.zip',
183+
'mac14-arm64': 'builds/firefox-beta/%s/firefox-beta-mac-arm64.zip',
184+
'mac15': 'builds/firefox-beta/%s/firefox-beta-mac.zip',
185+
'mac15-arm64': 'builds/firefox-beta/%s/firefox-beta-mac-arm64.zip',
112186
'win64': 'builds/firefox-beta/%s/firefox-beta-win64.zip',
113187
},
114188
'webkit': {
115189
'<unknown>': undefined,
116190
'ubuntu18.04-x64': undefined,
117191
'ubuntu20.04-x64': 'builds/webkit/%s/webkit-ubuntu-20.04.zip',
118192
'ubuntu22.04-x64': 'builds/webkit/%s/webkit-ubuntu-22.04.zip',
193+
'ubuntu24.04-x64': 'builds/webkit/%s/webkit-ubuntu-24.04.zip',
119194
'ubuntu18.04-arm64': undefined,
120195
'ubuntu20.04-arm64': 'builds/webkit/%s/webkit-ubuntu-20.04-arm64.zip',
121196
'ubuntu22.04-arm64': 'builds/webkit/%s/webkit-ubuntu-22.04-arm64.zip',
197+
'ubuntu24.04-arm64': 'builds/webkit/%s/webkit-ubuntu-24.04-arm64.zip',
122198
'debian11-x64': 'builds/webkit/%s/webkit-debian-11.zip',
123199
'debian11-arm64': 'builds/webkit/%s/webkit-debian-11-arm64.zip',
124200
'debian12-x64': 'builds/webkit/%s/webkit-debian-12.zip',
@@ -134,16 +210,20 @@ const DOWNLOAD_PATHS = {
134210
'mac13-arm64': 'builds/webkit/%s/webkit-mac-13-arm64.zip',
135211
'mac14': 'builds/webkit/%s/webkit-mac-14.zip',
136212
'mac14-arm64': 'builds/webkit/%s/webkit-mac-14-arm64.zip',
213+
'mac15': 'builds/webkit/%s/webkit-mac-15.zip',
214+
'mac15-arm64': 'builds/webkit/%s/webkit-mac-15-arm64.zip',
137215
'win64': 'builds/webkit/%s/webkit-win64.zip',
138216
},
139217
'ffmpeg': {
140218
'<unknown>': undefined,
141219
'ubuntu18.04-x64': undefined,
142220
'ubuntu20.04-x64': 'builds/ffmpeg/%s/ffmpeg-linux.zip',
143221
'ubuntu22.04-x64': 'builds/ffmpeg/%s/ffmpeg-linux.zip',
222+
'ubuntu24.04-x64': 'builds/ffmpeg/%s/ffmpeg-linux.zip',
144223
'ubuntu18.04-arm64': undefined,
145224
'ubuntu20.04-arm64': 'builds/ffmpeg/%s/ffmpeg-linux-arm64.zip',
146225
'ubuntu22.04-arm64': 'builds/ffmpeg/%s/ffmpeg-linux-arm64.zip',
226+
'ubuntu24.04-arm64': 'builds/ffmpeg/%s/ffmpeg-linux-arm64.zip',
147227
'debian11-x64': 'builds/ffmpeg/%s/ffmpeg-linux.zip',
148228
'debian11-arm64': 'builds/ffmpeg/%s/ffmpeg-linux-arm64.zip',
149229
'debian12-x64': 'builds/ffmpeg/%s/ffmpeg-linux.zip',
@@ -159,16 +239,49 @@ const DOWNLOAD_PATHS = {
159239
'mac13-arm64': 'builds/ffmpeg/%s/ffmpeg-mac-arm64.zip',
160240
'mac14': 'builds/ffmpeg/%s/ffmpeg-mac.zip',
161241
'mac14-arm64': 'builds/ffmpeg/%s/ffmpeg-mac-arm64.zip',
242+
'mac15': 'builds/ffmpeg/%s/ffmpeg-mac.zip',
243+
'mac15-arm64': 'builds/ffmpeg/%s/ffmpeg-mac-arm64.zip',
162244
'win64': 'builds/ffmpeg/%s/ffmpeg-win64.zip',
163245
},
246+
'winldd': {
247+
'<unknown>': undefined,
248+
'ubuntu18.04-x64': undefined,
249+
'ubuntu20.04-x64': undefined,
250+
'ubuntu22.04-x64': undefined,
251+
'ubuntu24.04-x64': undefined,
252+
'ubuntu18.04-arm64': undefined,
253+
'ubuntu20.04-arm64': undefined,
254+
'ubuntu22.04-arm64': undefined,
255+
'ubuntu24.04-arm64': undefined,
256+
'debian11-x64': undefined,
257+
'debian11-arm64': undefined,
258+
'debian12-x64': undefined,
259+
'debian12-arm64': undefined,
260+
'mac10.13': undefined,
261+
'mac10.14': undefined,
262+
'mac10.15': undefined,
263+
'mac11': undefined,
264+
'mac11-arm64': undefined,
265+
'mac12': undefined,
266+
'mac12-arm64': undefined,
267+
'mac13': undefined,
268+
'mac13-arm64': undefined,
269+
'mac14': undefined,
270+
'mac14-arm64': undefined,
271+
'mac15': undefined,
272+
'mac15-arm64': undefined,
273+
'win64': 'builds/winldd/%s/winldd-win64.zip',
274+
},
164275
'android': {
165276
'<unknown>': 'builds/android/%s/android.zip',
166277
'ubuntu18.04-x64': undefined,
167278
'ubuntu20.04-x64': 'builds/android/%s/android.zip',
168279
'ubuntu22.04-x64': 'builds/android/%s/android.zip',
280+
'ubuntu24.04-x64': 'builds/android/%s/android.zip',
169281
'ubuntu18.04-arm64': undefined,
170282
'ubuntu20.04-arm64': 'builds/android/%s/android.zip',
171283
'ubuntu22.04-arm64': 'builds/android/%s/android.zip',
284+
'ubuntu24.04-arm64': 'builds/android/%s/android.zip',
172285
'debian11-x64': 'builds/android/%s/android.zip',
173286
'debian11-arm64': 'builds/android/%s/android.zip',
174287
'debian12-x64': 'builds/android/%s/android.zip',
@@ -184,37 +297,10 @@ const DOWNLOAD_PATHS = {
184297
'mac13-arm64': 'builds/android/%s/android.zip',
185298
'mac14': 'builds/android/%s/android.zip',
186299
'mac14-arm64': 'builds/android/%s/android.zip',
300+
'mac15': 'builds/android/%s/android.zip',
301+
'mac15-arm64': 'builds/android/%s/android.zip',
187302
'win64': 'builds/android/%s/android.zip',
188303
},
189-
'chromium-headless-shell': {
190-
'<unknown>': undefined,
191-
'ubuntu18.04-x64': undefined,
192-
'ubuntu20.04-x64': 'builds/chromium/%s/chromium-headless-shell-linux.zip',
193-
'ubuntu22.04-x64': 'builds/chromium/%s/chromium-headless-shell-linux.zip',
194-
'ubuntu24.04-x64': 'builds/chromium/%s/chromium-headless-shell-linux.zip',
195-
'ubuntu18.04-arm64': undefined,
196-
'ubuntu20.04-arm64': 'builds/chromium/%s/chromium-headless-shell-linux-arm64.zip',
197-
'ubuntu22.04-arm64': 'builds/chromium/%s/chromium-headless-shell-linux-arm64.zip',
198-
'ubuntu24.04-arm64': 'builds/chromium/%s/chromium-headless-shell-linux-arm64.zip',
199-
'debian11-x64': 'builds/chromium/%s/chromium-headless-shell-linux.zip',
200-
'debian11-arm64': 'builds/chromium/%s/chromium-headless-shell-linux-arm64.zip',
201-
'debian12-x64': 'builds/chromium/%s/chromium-headless-shell-linux.zip',
202-
'debian12-arm64': 'builds/chromium/%s/chromium-headless-shell-linux-arm64.zip',
203-
'mac10.13': undefined,
204-
'mac10.14': undefined,
205-
'mac10.15': undefined,
206-
'mac11': 'builds/chromium/%s/chromium-headless-shell-mac.zip',
207-
'mac11-arm64': 'builds/chromium/%s/chromium-headless-shell-mac-arm64.zip',
208-
'mac12': 'builds/chromium/%s/chromium-headless-shell-mac.zip',
209-
'mac12-arm64': 'builds/chromium/%s/chromium-headless-shell-mac-arm64.zip',
210-
'mac13': 'builds/chromium/%s/chromium-headless-shell-mac.zip',
211-
'mac13-arm64': 'builds/chromium/%s/chromium-headless-shell-mac-arm64.zip',
212-
'mac14': 'builds/chromium/%s/chromium-headless-shell-mac.zip',
213-
'mac14-arm64': 'builds/chromium/%s/chromium-headless-shell-mac-arm64.zip',
214-
'mac15': 'builds/chromium/%s/chromium-headless-shell-mac.zip',
215-
'mac15-arm64': 'builds/chromium/%s/chromium-headless-shell-mac-arm64.zip',
216-
'win64': 'builds/chromium/%s/chromium-headless-shell-win64.zip',
217-
},
218304
} as const;
219305

220306
@SingletonProto()
@@ -231,7 +317,7 @@ export class PlaywrightBinary extends AbstractBinary {
231317
const nowDateISO = new Date().toISOString();
232318
const buildDirs: BinaryItem[] = [];
233319
for (const browserName of Object.keys(DOWNLOAD_PATHS)) {
234-
if (browserName === 'chromium-headless-shell') {
320+
if (browserName === 'chromium-headless-shell' || browserName === 'chromium-tip-of-tree-headless-shell') {
235321
continue;
236322
}
237323
buildDirs.push({ name: `${browserName}/`, isDir: true, url: '', size: '-', date: nowDateISO });
@@ -241,7 +327,7 @@ export class PlaywrightBinary extends AbstractBinary {
241327
'/builds/': buildDirs,
242328
};
243329
for (const browserName of Object.keys(DOWNLOAD_PATHS)) {
244-
if (browserName === 'chromium-headless-shell') {
330+
if (browserName === 'chromium-headless-shell' || browserName === 'chromium-tip-of-tree-headless-shell') {
245331
continue;
246332
}
247333
this.dirItems[`/builds/${browserName}/`] = [];
@@ -293,6 +379,16 @@ export class PlaywrightBinary extends AbstractBinary {
293379
});
294380
}
295381
}
382+
// if chromium-tip-of-tree-headless-shell not exists on browsers, copy chromium-tip-of-tree to chromium-tip-of-tree-headless-shell
383+
if (!browsers.find(browser => browser.name === 'chromium-tip-of-tree-headless-shell')) {
384+
const chromiumTipOfTree = browsers.find(browser => browser.name === 'chromium-tip-of-tree');
385+
if (chromiumTipOfTree) {
386+
browsers.push({
387+
...chromiumTipOfTree,
388+
name: 'chromium-tip-of-tree-headless-shell',
389+
});
390+
}
391+
}
296392

297393
for (const browser of browsers) {
298394
const downloadPaths = DOWNLOAD_PATHS[browser.name];
@@ -302,6 +398,10 @@ export class PlaywrightBinary extends AbstractBinary {
302398
// chromium-headless-shell should be under chromium
303399
// https://playwright.azureedge.net/builds/chromium/1155/chromium-headless-shell-mac-arm64.zip
304400
browserDirname = 'chromium';
401+
} else if (browser.name === 'chromium-tip-of-tree-headless-shell') {
402+
// chromium-tip-of-tree-headless-shell should be under chromium-tip-of-tree
403+
// https://playwright.azureedge.net/builds/chromium-tip-of-tree/1293/chromium-tip-of-tree-headless-shell-mac-arm64.zip
404+
browserDirname = 'chromium-tip-of-tree';
305405
}
306406
for (const [ platform, remotePath ] of Object.entries(downloadPaths)) {
307407
if (typeof remotePath !== 'string') continue;

0 commit comments

Comments
 (0)