Commit Graph

546 Commits

Author SHA1 Message Date
Max Schmitt
058a30877d
devops: fix headed macOS-14 bots (#30442) 2024-04-20 00:32:48 +02:00
Max Schmitt
629829816b
chore: move azure/login step to the end of the workflows (#30441) 2024-04-19 22:00:13 +02:00
Max Schmitt
3f8bd5ffd1
devops: updated auth mode follow-ups (#30440) 2024-04-19 21:23:39 +02:00
Max Schmitt
ed0e1909e5
devops: change auth mode for flakiness/docker/driver uploads (#30405) 2024-04-19 20:36:15 +02:00
Stephen Wade
fb3bcc8b18
devops: fix issues with audio in macOS 14 on GitHub Actions (#30410) 2024-04-18 20:07:39 +02:00
Max Schmitt
563c9baf00 devops: migrate html merge upload to Azure Federate credentials 2024-04-16 13:16:40 +02:00
Max Schmitt
47a7a3af90 devops: fix 'bump driver Node.js' workflow 2024-04-09 12:35:13 +02:00
Max Schmitt
14cd7953f3
devops(merge): validate zip before uploading (#30061) 2024-03-22 21:22:19 +01:00
Max Schmitt
4a67437704
devops(gha): move from always() to !cancelled() (#30060)
**Investigation:**

- According to
[here](https://github.com/microsoft/playwright/actions/runs/8351676198),
the job got cancelled, because someone force-pushed and another commit
took priority.
- We have `if: always()` for uploading the blobs, even if they are
cancelled. We expect, that the task before (`npx playwright test`)
finished writing the blob, but it didn't - cancelled in between. We
still upload - a broken one.
- We download the broken zip and it breaks from there on.

Proposed change: Instead of uploading always, upload if it did not get
cancelled.

Quoting from the GitHub Actions docs about `always()`:

> Warning: Avoid using always for any task that could suffer from a
critical failure, for example: getting sources, otherwise the workflow
may hang until it times out. If you want to run a job or step regardless
of its success or failure, use the recommended alternative: if: `${{
!cancelled() }}`

This is phase 1/2 where it changes our code to use this new condition.
The actual roll-out happens once it works for us.

Relates https://github.com/microsoft/playwright/issues/29451
2024-03-22 19:25:13 +01:00
Max Schmitt
911fd204cf
devops: fix WebView2 tests (#30009)
Turns out we were using version 119.0.2151.58 before where the tests are
failing. After this change we are using 122.0.2365.92.

Fixes https://github.com/microsoft/playwright/issues/29695
Relates https://github.com/actions/runner-images/issues/9538
2024-03-19 23:18:20 +01:00
Max Schmitt
ef0a24a1b0
chore: remove chromium-with-symbols build (#29807) 2024-03-04 20:12:01 +01:00
Pavel Feldman
ef924c14e7
chore: do not use project id in telereporter (#29776) 2024-03-01 21:44:08 -08:00
Max Schmitt
713fbb5d23
devops: fix cherry_pick_into_release_branch permissions (#29689)
Fixes
https://github.com/microsoft/playwright/actions/runs/8067553095/job/22038251156.

Signed-off-by: Max Schmitt <max@schmitt.mx>
2024-02-27 17:34:16 +01:00
Yury Semikhatsky
56028269bb
devops: add a hint how to create a repro (#29665)
Fixes https://github.com/microsoft/playwright/issues/29620
2024-02-26 13:33:57 -08:00
Max Schmitt
fb48bfcbe6 Revert "devops: auto close questions (#29513)"
This reverts commit 09d0a099a2.
2024-02-15 19:22:25 +01:00
Max Schmitt
09d0a099a2
devops: auto close questions (#29513)
Signed-off-by: Max Schmitt <max@schmitt.mx>
2024-02-15 18:14:51 +01:00
Max Schmitt
abd8502490
devops: do not publish sha-X Docker images (#29433) 2024-02-09 09:07:10 -08:00
Max Schmitt
bf31f2865f
chore: disable blank issue templates (#29368) 2024-02-05 20:02:15 +01:00
Pavel Feldman
85e4589a90
Update feature.yml
Signed-off-by: Pavel Feldman <pavel.feldman@gmail.com>
2024-02-02 10:33:59 -08:00
Max Schmitt
e69f159f43
devops: fix roll into PR action (#29318)
Signed-off-by: Max Schmitt <max@schmitt.mx>
2024-02-02 14:16:56 +01:00
Pavel Feldman
d56a50245b
chore: Jest-inspired GitHub templates (thanks Jest!) (#29303) 2024-02-01 14:58:33 -08:00
Max Schmitt
4affcdef71
devops: run tests on macOS 14 (#29241) 2024-01-30 18:04:35 +01:00
Max Schmitt
1db4e2effb
devops: bump GitHub Actions workflow actions (#29219)
Fixes:

<img width="2186" alt="image"
src="https://github.com/microsoft/playwright/assets/17984549/e75b4319-a8d9-4784-8357-83611f2671ae">
2024-01-29 19:22:44 +01:00
Yury Semikhatsky
85c42939b1
devops: do not use broken overwrite: true for uploads (#29160)
Reverting parts of https://github.com/microsoft/playwright/pull/29080
related to use of overwrite: true as it is racy and
[fails](https://github.com/microsoft/playwright/actions/runs/7641699534/job/20819588957?pr=28932#step:10:63)
time to time with parallel jobs:


![image](https://github.com/microsoft/playwright/assets/9798949/cd484e2d-2875-4950-9247-5ea033c6e92d)


Reference https://github.com/actions/upload-artifact/issues/506
2024-01-25 12:55:29 -08:00
Yury Semikhatsky
4b0e55abda
devops: make sure uploaded reports always contain directory (#29080)
* Before the change if if uploaded artifact path contained just one file
it would be [archived
directly](694cdabd8b/src/search.ts (L142-L151)),
but if there is a sister folder it would be an archive of the entire
dir. According to the action docs "If a wildcard pattern is used, the
path hierarchy will be preserved after the first wildcard pattern", so
hopefully it means that the directory is always compressed even if there
is a single file in it.
* Use `overwrite: true` to have only one artifact with pull request
number.
2024-01-19 17:23:22 -08:00
Yury Semikhatsky
a3c38bc1f9
devops: merge paginated results when downloading blobs (#29013)
* The results are paginated by default to return max 30 entries, see
[this
page](https://docs.github.com/en/rest/actions/workflow-runs?apiVersion=2022-11-28).
We use
[octakit.paginate](https://octokit.github.io/rest.js/v20#pagination),
wrapped into
[github-script](60a0d83039)
to automatically load all artifacts urls.

* Also bumped github-script to v7
2024-01-16 16:14:38 -08:00
Max Schmitt
67478efe92
devops: fix Chromium ToT headed tests (#28892)
This broke in
6c2c777cae (diff-2d067b4a60c6de032d0719122683d3179baf5c9ff0f1669ce8e05938102526e2L358)
2024-01-08 09:30:40 -08:00
Yury Semikhatsky
6c2c777cae
devops: migrate to download/upload-artifact@v4 (#28850)
`actions/upload-artifact@v4` comes with the following [breaking
change](https://github.com/actions/upload-artifact?tab=readme-ov-file#breaking-changes):
"Due to how Artifacts are created in this new version, it is no longer
possible to upload to the same named Artifact multiple times. You must
either split the uploads into multiple Artifacts with different names,
or only upload once. Otherwise you will encounter an error."

Due to that we cannot copy multiple blob report folders into the same
artifact name and rely on the action to merge them. Instead, as
suggested by their migration guide, we upload each blob report into a
uniquely named artifact with prefix `blob-report-` and then download all
of them into same directory.

This version change also affects how we store pull_request_number.txt
into an artifact. Previously we relied on the fact that uploading
artifact with the same name would silently override existing one, but
now it's an error. To overcome that, we upload PR number file into
uniquely named artifacts `pull-request-*` and later extract them into
same location with `unzip -n` which will never override existing file,
so we end up with single `pull_request_number.txt`.

Reference #28800
2024-01-04 09:13:55 -08:00
Max Schmitt
e30c0a6ff7
devops: fix pr_check_client_side_changes workflow (#28847)
https://github.com/microsoft/playwright/actions/runs/7401729926/workflow
2024-01-03 13:15:50 -08:00
Yury Semikhatsky
ea4bb715f3
devops: extend client side changes pattern to include protocol and API changes (#28682) 2023-12-18 15:06:29 +01:00
Max Schmitt
35b61b7cdf
test: use net8.0 for webview2 tests (#28665) 2023-12-15 13:03:33 -08:00
Yury Semikhatsky
e31e5b1b7c
fix: use blob fileName as is without adding shard suffix (#28634)
Fixes https://github.com/microsoft/playwright/issues/27284
2023-12-13 18:47:13 -08:00
Yury Semikhatsky
411abdb752
feat: add fileName option to blob reporter (#28525)
Reference https://github.com/microsoft/playwright/issues/27284
2023-12-06 20:44:06 -08:00
Pavel Feldman
d296d057d3
Update bug.md
Signed-off-by: Pavel Feldman <pavel.feldman@gmail.com>
2023-12-01 09:33:51 -08:00
Dmitry Gozman
738155d85d
fix(dispatcher): only remove stale dispatcher after sending "create" (#28176)
Otherwise, we might dispose objects referenced in the initializer of the
new object being created, which triggers an exception on the client.
2023-11-16 15:07:43 -08:00
Yury Semikhatsky
738cbfc216
devops: call merge-reports with explicit config (#27965)
After https://github.com/microsoft/playwright/pull/27963 we have to
provide explicit merge config to disambiguate testDir.
2023-11-03 13:49:32 -07:00
Dmitry Gozman
39f92e82f6
test: limit workers to one for Firefox on Windows (#27514) 2023-10-09 12:34:59 -07:00
Max Schmitt
f856e3e4bc
chore: run 'npm pkg fix' (#27470)
As per

```
npm WARN publish npm auto-corrected some errors in your package.json when publishing.  Please run "npm pkg fix" to address these errors.
npm WARN publish errors corrected:
npm WARN publish Removed invalid "scripts"
npm WARN publish "bin[playwright-core]" script name was cleaned
npm WARN publish "repository.url" was normalized to "git+https://github.com/microsoft/playwright.git
```

works now as per
https://www.npmjs.com/package/@playwright/test/v/1.39.0-alpha-1696547902000
when you scroll down.

https://github.com/microsoft/playwright/issues/22555
2023-10-05 23:42:27 +00:00
Max Schmitt
0efa4a90cc
devops: Node.js 16 -> Node.js 18 (#27467)
As per
https://github.com/microsoft/playwright-internal/blob/main/INFRASTRUCTURE.md.


Fixes https://github.com/microsoft/playwright/issues/27148.
2023-10-05 23:08:43 +00:00
Max Schmitt
ba207697c3
devops: don't force NPM 8 everywhere (#27465)
We used to have this historically due to bots which were running on
Node.js 14. Node.js 14 was shipping NPM 7 back in the days.

Now all bots are on >= Node.js 16 so we can remove this legacy code.
2023-10-05 22:21:00 +00:00
Max Schmitt
293c85935a
devops: publish using NPM provenance feature (#27459)
As per
https://docs.npmjs.com/generating-provenance-statements#publishing-packages-with-provenance-via-github-actions.

We use Node.js 18 (LTS) to get NPM 9+.

Closes https://github.com/microsoft/playwright/issues/22555
2023-10-05 20:00:18 +00:00
Dmitry Gozman
dfc75a1e1a
test: speed up installation tests by not isolating browser unless required (#27370) 2023-10-02 11:26:08 -07:00
Pavel Feldman
ffd20f43f8
chore: dispose stale handles to prevent oom, 1000 of a kind max (#27315)
https://github.com/microsoft/playwright/issues/6319
2023-09-26 15:54:33 -07:00
Dmitry Gozman
d85dc687b9
devops: include utils/isomorphic into client-side changes (#27061) 2023-09-13 13:37:07 -07:00
Max Schmitt
5811d65b9d
Revert "chore: pin node to 20.5 to work around https://github.com/nod… (#26979)
…ejs/node/issues/49497 (#26921)"

This reverts commit 874e285adf.
2023-09-11 22:33:09 +02:00
Yury Semikhatsky
2feae015aa
chore: remove details from markdown reports (#26961)
- remove error details from the reports
- collapse flaky tests by default
- limit comment to 65365 character

GitHub API has comment length limit 65536 chars:
```
Unhandled error: HttpError: Validation Failed: {"resource":"IssueComment","code":"unprocessable","field":"data","message":"Body is too long (maximum is 65536 characters)"}
```
2023-09-08 17:49:34 -07:00
Dmitry Gozman
186f86905c
chore: make @playwright/test depend on playwright (#26946) 2023-09-08 14:23:35 -07:00
Dmitry Gozman
7c0766a273
devops: install pnpm and yarn for secondary installation tests (#26968) 2023-09-08 13:54:05 -07:00
Dmitry Gozman
e6d9b2a818
test: add installation tests for yarn and pnpm (#26937) 2023-09-08 10:06:31 -07:00
Pavel Feldman
874e285adf
chore: pin node to 20.5 to work around https://github.com/nodejs/node/issues/49497 (#26921)
Works around https://github.com/nodejs/node/issues/49497
2023-09-06 16:38:19 -07:00