Max Schmitt
fd5c10e5d7
chore: have commit header in the client side changes issue title ( #8591 )
2021-08-31 19:48:18 +02:00
Max Schmitt
4bedf1aca4
devops(auto-roll): build project before creating PR
2021-08-30 17:46:32 +02:00
Max Schmitt
abc8cb01ea
chore: #8377 follow-ups
2021-08-28 00:06:49 +02:00
Max Schmitt
16a7de5dab
chore: move client side changes check to the push event
...
#8377 follow-ups
2021-08-27 12:22:49 +02:00
Max Schmitt
db36f40422
chore: create issue on PR merge with client side changes ( #8377 )
2021-08-25 13:36:57 +02:00
Dmitry Gozman
7818f5fa0b
test: add a tracing bot that collects a trace for most contexts ( #8316 )
2021-08-19 19:09:19 -07:00
Max Schmitt
93c0da6c07
devops: #8253 follow-up fixes
2021-08-18 10:15:36 +02:00
Max Schmitt
659b378184
devops: #8253 follow-up fixes
2021-08-17 14:36:44 +02:00
Max Schmitt
e72e49ecc4
devops: #8253 follow-up fixes
2021-08-17 14:32:53 +02:00
Max Schmitt
e92924221a
devops: add workflow to roll new browser into PW ( #8253 )
2021-08-17 14:23:40 +02:00
Andrey Lushnikov
156c5d48dc
devops: use win canary to roll chromium
2021-08-11 21:09:07 +03:00
Andrey Lushnikov
ca22055045
devops: rename chromium auto-roller workflow
2021-08-07 09:07:10 -07:00
Andrey Lushnikov
51fb19561c
devops: support npx playwright install --with-deps
command ( #7194 )
...
The common pattern today is to have two commands to configure CI:
```sh
npx playwright install-deps chromium
npx playwright install chromium
```
With this patch, this becomes:
```sh
npx playwright install --with-deps chromium
```
Note: `--with-deps` might call `sudo`.
2021-08-07 03:53:33 -07:00
Max Schmitt
fcb8d5310a
devops: add bot to auto bump Chromium ( #7997 )
2021-08-06 13:58:39 +02:00
Andrey Lushnikov
09764a4423
chore: move msedge-dev workflow to secondary tests ( #7681 )
2021-07-16 21:40:13 +02:00
Andrey Lushnikov
865aff8c9d
feat: support msedge-dev installation ( #7679 )
...
Fixes #7677
2021-07-16 09:56:51 -07:00
Andrey Lushnikov
2c157796e6
devops: add manual trigger for chromium builders ( #7670 )
2021-07-16 02:45:29 -07:00
Max Schmitt
b6b96daa88
devops(GHA): move build-driver to secondary workflow ( #7522 )
2021-07-08 22:50:54 +02:00
Andrey Lushnikov
ec8d0629f3
feat: support msedge-beta channel ( #7442 )
...
Fixes #7232
2021-07-02 12:55:46 -07:00
Andrey Lushnikov
fe32d38414
feat: move browser fonts to tools section ( #7443 )
...
This way we not only fix Docker images, but also fix `npx playwright
install-deps` in virtual machines.
2021-07-02 02:09:31 -07:00
Andrey Lushnikov
d576b8bca8
devops: support explicit GitHub sha for chromium-with-symbols build ( #7367 )
2021-06-28 14:26:15 -07:00
Max Schmitt
0d36cec600
chore: remove Playwright GitHub Action mentions ( #7281 )
2021-06-23 23:15:00 +02:00
Max Schmitt
3106c822a7
devops: test Docker image on root user ( #7219 )
2021-06-18 11:07:15 -07:00
Andrey Lushnikov
34d151a1f9
devops: introduce Docker tests ( #7157 )
...
Fixes #7139
2021-06-15 23:59:20 -07:00
Andrey Lushnikov
cff04abb5e
devops: support manual trigger for chromium-with-symbols bubild
2021-06-15 00:36:15 -08:00
Andrey Lushnikov
bf9e9bece9
devops: trigger chromium-with-symbols release on every Release ( #7132 )
...
References #7130
2021-06-15 01:22:31 -07:00
Dmitry Gozman
1d6ca5284c
feat(test runner): add tests for playwright-specific fixtures ( #6952 )
2021-06-08 15:52:08 -07:00
Andrey Lushnikov
53d68bdb38
feat: firefox is stable by default ( #6953 )
...
This patch:
- rolls Firefox to v1269 which is now a firefox-stable build.
- introduces a new channel, `firefox-beta`, for our internal needs.
Fixes #6817
2021-06-08 09:34:17 -07:00
Andrey Lushnikov
d22fa8681d
devops: update trigger for firefox beta builder
2021-06-07 17:21:42 -07:00
Andrey Lushnikov
55da16d8cd
Revert "feat: switch to the Firefox Stable equivalent by default ( #6926 )" ( #6947 )
...
This reverts commit a25b11659be8887b700311180fcd3653aa9e472b.
In a discussion with Dmitry Gozman we decided to revert this and instead
proceed with the following approach:
- rename `//browser_patches/firefox` to `//browser_patches/firefox-beta`
- rename `//browser_patches/firefox-stable` folder to
`//browser_patches/firefox`
In all of the folders, we will keep the `BUILD_NUMBER` original so that
it doesn't clash on the CDN.
2021-06-07 15:55:01 -07:00
Andrey Lushnikov
a1e8d2d531
feat: switch to the Firefox Stable equivalent by default ( #6926 )
...
This patch:
- starts downloading Firefox Stable equivalent by default
- starts running Firefox-Stable on our smoke tests (tests-1)
- starts running Firefox-Beta on our CQ1 tests (tests-2)
Note: there's a little confusion right now with browser names:
- `firefox-stable` - firefox-stable equivalent
- `firefox`- firefox-beta equivalent
I'll rename `firefox` to `firefox-beta` in a follow-up.
Fixes #6817
2021-06-07 15:00:23 -07:00
Andrey Lushnikov
cfd49b5c01
feat: support npx playwright install msedge
( #6861 )
2021-06-07 00:23:22 -07:00
Dmitry Gozman
f745bf1fbc
chore: bring in folio source ( #6923 )
...
- Source now lives at `src/test`.
- Former folio tests live at `tests/playwright-test`.
- We use `src/test/internal.ts` that exposes base test without
Playwright fixtures for most tests (to avoid modifications for now).
- Test types live in `types/testFoo.d.ts`.
- Stable test runner is installed to `tests/config/test-runner` during `npm install`.
- All deps including test-only are now listed in `package.json`.
Non-test deps must also be listed in `build_package.js` to get included.
2021-06-06 17:09:53 -07:00
Andrey Lushnikov
401dcfdefd
chore: do not use a subshell hack when using XVFB ( #6884 )
...
This was originally introduced in 9caa61aed1
.
However, we no longer save process STDERR.
2021-06-03 15:28:57 -07:00
Andrey Lushnikov
f2cc439d8b
chore: move electron back from FYI bots to CQ1 bots ( #6883 )
...
This is according to the discussion at the meeting.
2021-06-03 15:03:10 -07:00
Andrey Lushnikov
b19b2dc3ad
devops: introduce manual @next NPM publishing ( #6881 )
2021-06-03 14:50:40 -07:00
Andrey Lushnikov
17b6f06b98
feat: install media pack on windows with npx playwright install-deps
( #6836 )
...
Chromium on Windows requires Media Pack to be installed. This patch
moves media pack installation under the `npx playwright install-deps`
umbrella.
2021-06-02 10:47:10 -07:00
Andrey Lushnikov
919d258356
feat: support npx playwright install chrome
( #6835 )
...
This will install latest-and-greatest chrome stable.
2021-06-01 23:16:55 -07:00
Andrey Lushnikov
c9613b36f9
devops: introduce "FYI" test bots ( #6834 )
...
The "FYI" bots never run on PRs - even when you put a "CQ1" label.
These tests are only run on commits to master / release branches and
their results are observed on the flakiness dashboard.
2021-06-01 18:45:45 -07:00
Andrey Lushnikov
cb4adb1446
feat: install chrome-beta via cli ( #6831 )
...
This patch starts introduces `npx playwright install chrome-beta`
command and switches our Chrome Beta tests to it.
2021-06-01 18:26:12 -07:00
Andrey Lushnikov
17585a369e
devops: do not run tests for docs changes ( #6825 )
2021-06-01 13:55:48 -07:00
Dmitry Gozman
8fefac9b8c
test: roll to folio@0.4.0-alpha21 ( #6789 )
2021-05-28 17:03:18 -07:00
Andrey Lushnikov
c60974d922
feat: do not rely on chocolatey to install Google Chrome Beta ( #6735 )
2021-05-25 17:32:08 -07:00
Andrey Lushnikov
2cdf1e122c
chore: add more logging while installing browsers ( #6688 )
2021-05-20 15:47:22 -07:00
Andrey Lushnikov
33a505b1e5
chore: add logging for installation steps ( #6565 )
...
This patch:
- adds debug logging
- sets up our workflows to use `DEBUG=pw:install` on CI
2021-05-18 17:38:02 -07:00
Manu Chambon
2697f8380f
devops(docker): upgrade to node 16 ( #6498 )
2021-05-12 09:23:38 -07:00
Andrey Lushnikov
a04c54ac28
devops: do not run workflows when all changes are browser-only ( #6520 )
...
Drive-by: rename primary/secondary tests to `tests 1` and `tests 2`
2021-05-11 17:25:05 -07:00
Andrey Lushnikov
bf81a284dd
devops: run less tests on each PR ( #6518 )
...
With this patch, we have the following behaviors:
- For PR's, we will run only Linux tests for Chromium, Firefox and
Webkit
- For commits to master and release-*, we'll run all the tests
To run all tests on PR, assign a "CQ1" label to the PR.
2021-05-11 17:01:02 -07:00
Dmitry Gozman
b01ccc282f
test: roll to folio@0.4.0-alpha11 ( #6496 )
2021-05-11 06:40:06 -07:00
Dmitry Gozman
573327b7b5
test: roll to folio@0.4.0-alpha8 ( #6451 )
2021-05-07 15:25:55 -07:00
Andrey Lushnikov
298b7aef2a
devops: install Google Chrome Beta testers ( #6389 )
2021-05-06 10:07:00 -07:00
Max Schmitt
2945daca7a
devops: fixed broken GitHub Actions workflow ( #6399 )
2021-05-04 12:19:50 +02:00
Andrey Lushnikov
4cd5673cc7
chore: add debugging information on bots to trace unzipping ( #6395 )
...
We occasionally stuble upon unzipping error: "end of central directory
record signature not found" that's coming from the underlying
unzip library.
This tracing should help us investigate what's going on here.
2021-05-03 16:52:54 -07:00
Max Schmitt
29164a625f
devops: use Node.js 12 on Windows bots ( #6377 )
2021-04-30 21:35:41 +02:00
Max Schmitt
a59a494e64
chore: drop support for Node.js 10 ( #6371 )
2021-04-30 07:49:10 -07:00
Dmitry Gozman
a4561310e8
test: set 20 minutes timeout for installation tests ( #6363 )
2021-04-29 11:12:03 -07:00
Andrey Lushnikov
23dfaf9e9b
feat: start downloading firefox-stable channel ( #6177 )
...
This patch adds support for downloading and running Playwright with
firefox-stable channel.
References #5993
2021-04-19 21:26:33 -07:00
Max Schmitt
6296d276f2
devops(gha): remove obsolete comment ( #6234 )
2021-04-19 13:02:32 -07:00
Andrey Lushnikov
27ed123a50
feat: remove core dumps from bots ( #6231 )
...
Turns out we haven't been uploading them as artifacts for quite some
time at least.
2021-04-19 13:02:06 -07:00
Andrey Lushnikov
2c34eaeaf9
devops: better upload flakiness dashboard upload script ( #6176 )
...
This patch moves some duplicated logic from YAML workflows to
the dashboard uploading script.
2021-04-19 08:39:10 -07:00
Yury Semikhatsky
e4ae6503d7
fix(inspector): fall back to custom executable path for UI ( #6214 )
2021-04-16 15:19:44 -07:00
Andrey Lushnikov
ad8b43467e
devops: trigger Firefox Stable builds ( #6174 )
...
References #5993
2021-04-09 22:27:02 -07:00
Dmitry Gozman
bd8433ba49
test: cleanup various testing env variables ( #6155 )
2021-04-09 07:59:09 -07:00
Dmitry Gozman
310692b101
test: run page tests on electron bot ( #6122 )
2021-04-08 10:26:26 -07:00
Dmitry Gozman
36a546999e
test: roll to folio 0.3.21-alpha ( #6108 )
2021-04-06 16:09:54 -07:00
Andrey Lushnikov
da3ddb07c0
devops: start uploading test reports from chrome stable runs ( #6092 )
2021-04-05 23:15:06 -07:00
Max Schmitt
6a767d1a9c
docs(docker): use focal by default ( #5746 )
2021-04-05 16:09:35 -07:00
Dmitry Gozman
5afe282fbb
test: move remaining files from old test/ directory ( #6081 )
2021-04-05 15:51:45 -07:00
Max Schmitt
af48a8a1f1
devops: use ubuntu focal on bots and docs ( #5951 )
...
- drive-by: updated NPM Action
- replaced ubuntu-latest by ubuntu-20 so its pinned
Extracted from #5746
2021-04-05 12:39:15 -07:00
Dmitry Gozman
4f7e7450e2
test: migrate last tests to new folio ( #6071 )
2021-04-05 09:18:56 -07:00
Dmitry Gozman
f21f47889e
test: migrate more page tests to folio ( #6062 )
2021-04-04 19:32:14 -07:00
Dmitry Gozman
0629922774
test: migrate page tests to new folio ( #6054 )
2021-04-02 14:23:42 -07:00
Dmitry Gozman
be79b3883b
test: bring new folio and migrate small amount of tests to it ( #5994 )
2021-04-01 16:35:26 -07:00
Ross Wollman
ca7cd7a677
devops: skip flakiness upload for forks ( #5978 )
...
Before this change, forks face a noise from pipeline
failures trying to upload to the flakiness dashboard.
Example: https://github.com/rwoll/playwright/runs/2199170557
2021-03-29 20:05:10 -07:00
Andrey Lushnikov
7678112242
tests: do not run video tests with Chrome Stable on Linux ( #5931 )
2021-03-23 22:18:49 -07:00
Pavel Feldman
1b802332d2
infra: remove shards from mac builds to remove 6 bots ( #5928 )
2021-03-23 14:23:23 -07:00
Pavel Feldman
ad5c028f37
test(android): run selected page tests on android ( #5879 )
2021-03-18 19:31:54 -07:00
Pavel Feldman
141583c79f
infra(chrome_stable): add more bots ( #5863 )
2021-03-17 17:24:01 -07:00
Andrey Lushnikov
ab4629af38
devops: add trigger workflow to deprecated webkit builds ( #5836 )
2021-03-16 01:31:32 -07:00
Pavel Feldman
ea32ad2b09
infra(channel): add edge stable bot ( #5825 )
2021-03-15 16:00:52 -07:00
Pavel Feldman
1dd6bd3316
infra(channel): wire release channel to all tests ( #5820 )
2021-03-15 08:07:57 -07:00
Pavel Feldman
a96d6a7dbb
feat: allow to pick stable channel ( #5817 )
2021-03-13 14:02:39 -08:00
Pavel Feldman
c4578f19f2
chore: organize per-browser dependencies ( #5787 )
2021-03-11 20:22:50 -08:00
Pavel Feldman
7fa59f6d94
infra(stable): add chrome stable bot ( #5768 )
2021-03-09 19:19:21 -08:00
Max Schmitt
7971bb0335
devops: verify clean tree on bots after build ( #5354 )
2021-02-16 13:38:09 -08:00
Andrey Lushnikov
e7b431d2f7
devops: fix test triggering ( #5458 )
2021-02-13 15:17:53 -08:00
Andrey Lushnikov
6326d6f3ac
devops: properly trigger tests on internal test runners ( #5453 )
2021-02-12 15:52:48 -08:00
Andrey Lushnikov
fa730bec78
devops: trigger internal tests on each commit
2021-02-12 00:41:51 -07:00
Andrey Lushnikov
9d2269dc75
devops: attempt to fix npm canary publishing
2021-02-11 18:26:25 -08:00
Andrey Lushnikov
009765d719
devops: upload flakiness dashboard for release branches too ( #5392 )
...
There are no reasons to not upload test results for release branches.
2021-02-10 09:19:10 -08:00
Andrey Lushnikov
1240dd48cb
devops: start publishing canary at midnight every day ( #5343 )
...
This patch:
- starts publishing canary NPM package at 00:10AM UTC
- canary version is published from default (`master`) branch and is
named with a date. E.g. for a version published on Feb 5, 2021, the
version would be `1.8.0-alpha-feb-5-2021`
- versions from release branches are still published on every commit and have the
regular commit timestamp suffix
2021-02-09 14:28:04 -08:00
Andrey Lushnikov
a370443a8a
devops: use repository dispatch to trigger builds for all applications ( #5104 )
2021-01-22 12:26:31 +03:00
Andrey Lushnikov
86775f06d9
devops: add workflow to trigger Chromium builds once revision changes
2021-01-22 12:06:32 +03:00
Dmitry Gozman
0d0a6e8f82
devops: update publish script to work for @next ( #5072 )
2021-01-20 13:38:03 -08:00
Dmitry Gozman
7ff86a848a
chore: add publish-driver-release workflow ( #5006 )
2021-01-13 17:01:46 -08:00
Dmitry Gozman
4ff7e1a419
chore: cleanup our build system ( #4903 )
...
- Consolidate our build and watch to a single build.js file.
- Update contributing docs.
- Remove unused scripts and package.json script entries.
2021-01-06 12:41:17 -08:00
Dmitry Gozman
d47fb6a780
feat(cli): build driver and upload to cdn ( #4841 )
2021-01-05 14:04:47 -08:00
Pavel Feldman
ae935a43d9
doc: further align docs w/ playwright.dev ( #4866 )
2021-01-03 08:47:29 -08:00
Yury Semikhatsky
a721ba5a8a
devops: give unique names to test shards ( #4756 )
2020-12-17 18:11:31 -08:00
Pavel Feldman
e02c54485c
chore(adb): make driver smaller ( #4713 )
2020-12-14 18:39:14 -08:00
Pavel Feldman
4799e8f20b
feat(adb): add screenshot ( #4701 )
2020-12-13 23:20:13 -08:00
Pavel Feldman
1596b53da2
test(adb): fix browser tests ( #4700 )
2020-12-13 22:33:00 -08:00
Max Schmitt
f4eff4dbe0
devops: add bot to test Android ( #4693 )
2020-12-13 14:13:50 -08:00
Andrey Lushnikov
bab16a5ce7
devops: remove self-hosted runners ( #4524 )
...
Turns out there's a way to abuse these self-hosted runners through pull-requests that mess with the YML files.
We'll move them to the private repo.
2020-11-25 08:24:54 -08:00
Pavel Feldman
e72d9a4185
chore: add websocket connection mode ( #4510 )
2020-11-20 15:19:39 -08:00
Andrey Lushnikov
2d16953e0a
devops: start Chromium mirroring from GHA ( #4492 )
2020-11-19 13:44:00 -08:00
Andrey Lushnikov
e2d4379489
devops: use proper tags for self-hosted runner ( #4480 )
...
Turns out github already has a reserved bot label called `ubuntu-18.04`,
so marking our self-hosted bot this way was adding it to the pool of
machines that are used here.
2020-11-18 11:02:49 -08:00
Andrey Lushnikov
33a168e5cf
devops: build firefox on self-hosted ubuntu 18.04 runner ( #4478 )
2020-11-18 08:33:53 -08:00
Andrey Lushnikov
05bb149d79
devops: teach self-hosted runner to install dependencies ( #4475 )
2020-11-17 20:46:16 -08:00
Andrey Lushnikov
80446aaf41
devops: use labels instead of self-hosted runner name ( #4474 )
2020-11-17 20:01:39 -08:00
Andrey Lushnikov
497a99deef
devops: try building webkit on a self-hosted ubuntu 18.04 runner ( #4473 )
2020-11-17 19:40:44 -08:00
Andrey Lushnikov
f9a407f10d
devops: remove bigsur buildbot ( #4457 )
2020-11-17 19:27:12 -08:00
Andrey Lushnikov
52147b3046
devops: fix flakiness upload on windows ( #4415 )
2020-11-12 09:30:09 -08:00
Andrey Lushnikov
5d39eae509
devops: actually export secrets into webkit building workflow ( #4354 )
2020-11-05 03:13:34 -08:00
Andrey Lushnikov
db8332b811
devops: checkout, build, and upload webkit-mac-11 ( #4353 )
2020-11-05 02:48:46 -08:00
Andrey Lushnikov
bba8c98c69
devops: try building webkit on gha ( #4351 )
2020-11-05 01:01:18 -08:00
Pavel Feldman
6cafdc5a0e
infra: fix the headful bit on the bots ( #4261 )
2020-10-27 13:14:27 -07:00
Andrey Lushnikov
163cf1befd
devops: collect test reports for all bots ( #4246 )
...
Drive-by: make sure to upload flakiness even if tests fail.
2020-10-26 17:46:13 -07:00
Andrey Lushnikov
d5fbe3a662
devops: start uploading test reports to flakiness dashboard ( #4239 )
2020-10-26 13:46:26 -07:00
Max Schmitt
ebf207b7a1
chore: add support for macOS Big Sur (11.0) ( #4149 )
...
macOS 11.0 Big Sur was released as a preview on GitHub Actions: https://github.com/actions/virtual-environments/issues/1781#event-3879790130
Closes #2789
Relates #2793
2020-10-19 10:02:35 -07:00
Pavel Feldman
9daedaca08
chore: roll test fixtures, replace trace w/ video ( #4129 )
2020-10-13 13:18:36 -07:00
Pavel Feldman
5804131c99
chore: bump folio to 0.3.9, use fixture timeout ( #4118 )
2020-10-13 12:17:23 -07:00
Dmitry Gozman
46b14bc740
chore: roll folio to 0.3.6 ( #4110 )
2020-10-12 09:16:02 -07:00
Dmitry Gozman
fe41bbd303
test: enable videos on tracing bots ( #3930 )
2020-09-24 04:38:01 -07:00
Max Schmitt
967f3b7505
devops(docker): push focal images to CR ( #3950 )
...
This will end up in the following Docker tags:
- focal <- new
- bionic < old as before
- latest <- old as before, keep bionic for now until EOL is reached
- v1.4 <- old as before, is bionic
- v1.4-focal <- new, is focal
Depends on https://github.com/aslushnikov/devops.aslushnikov.com/pull/3 to ensure it works.
Relates to https://github.com/microsoft/playwright/issues/3791 .
2020-09-23 15:10:43 -07:00
Pavel Feldman
2d1cabdd3f
test: roll test runner to 0.3.18 ( #3949 )
2020-09-22 12:52:39 -07:00
Max Schmitt
becdccdf03
devops(docker): added Dockerfile for Ubuntu 20 focal ( #3891 )
...
Each Ubuntu and Debian release has a code name. Ubuntu 18(bionic), Ubuntu 20(focal). This adds the Dockerfile for Ubuntu20.
Next steps and follow up changes:
- add it to the devops site, so we are sure all tests are passing, locally they did
- deploy it to the MCR, naming needs to be clarified, probably just as "focal".
This naming schema allows us in the future to add Debian support too. But we should wait until Headless WK is fixed.
Relates #3791
Relates #2758
Closes #3338
2020-09-21 08:47:44 -07:00
Andrey Lushnikov
84a0066c9f
devops: align release publishing of docker image with dev releases ( #3725 )
...
This patch starts using the same approach to docker publishing that we
currently use to publish canary docker images.
2020-09-02 23:33:09 -07:00
Andrey Lushnikov
b7f6a98deb
devops: use a helper script to tag and push docker images ( #3737 )
...
It turns out that the new `docker push --all-tags` is not yet available
in the latest docker distribution on Ubuntu 20.04.
This provides a helper script to tag and publish the docker image.
2020-09-02 14:28:01 -07:00
Andrey Lushnikov
df12264655
devops: use ubuntu 20.04 to build & publish docker releases ( #3736 )
...
We rely on `docker push --all-tags` flag that exists only in the
new version of docker.
The PR to docker with the flag: https://github.com/docker/cli/pull/2220
2020-09-02 11:46:24 -07:00
Andrey Lushnikov
216db2c9b3
devops: use microsoft/playwright-github-action@v1 everywhere ( #3735 )
...
Since we launch browsers as part of the `npm run build`, we need
to prepare environment.
2020-09-02 11:32:59 -07:00
Andrey Lushnikov
9d999ae1f0
devops: push all tags to docker registry ( #3732 )
...
Instead of pushing one specific tag, push repository itself.
This should push all the associated tags.
2020-09-02 10:33:54 -07:00
Yury Semikhatsky
fc29623508
feat(screencast): use system ffmpeg on linux ( #3724 )
2020-09-02 08:47:43 -07:00
Andrey Lushnikov
47ea1e07ba
devops: another attempt to figure out docker publishing ( #3721 )
2020-09-01 17:32:16 -07:00
Andrey Lushnikov
1de4f7fa4c
devops: trigger docker devrelease when github action itself changes ( #3719 )
2020-09-01 16:59:03 -07:00
Andrey Lushnikov
2dc57c5b3d
chore: fix yaml syntax in the github action ( #3718 )
2020-09-01 16:54:05 -07:00
Andrey Lushnikov
1f93fb72d7
chore: fix devrelease workflow names ( #3717 )
2020-09-01 16:51:32 -07:00
Andrey Lushnikov
ba7093cbe8
devops: try to use azure/docker-login instead of manual login ( #3714 )
...
Manual login appeared to be successful, but rejected docker push.
References #2926
2020-09-01 14:24:42 -07:00
Andrey Lushnikov
ef5c87ccea
devops: switch docker publishing to a bash script ( #3704 )
...
It turns out Github Actions have docker pre-installed.
This patch unifies the codepaths that we use to build docker image
locally and to publish it from CI.
As a result, there's no extra `--prepare-context` argument in
`//docs/docker/build.sh` that was used solely on CI.
References #2926
2020-09-01 11:33:19 -07:00
Max Schmitt
1877c29834
devops: remove autoroll ( #3684 )
...
We have it in a own dedicated devops repo now.
2020-08-31 17:00:07 -07:00
Joel Einbinder
3cc91093a1
chore(testrunner): move out of the repo ( #3687 )
2020-08-29 08:27:32 -07:00
Pavel Feldman
555a8d0d10
fix(testrunner): include fixture teardown into timeout, add global timeout ( #3685 )
2020-08-28 19:27:49 -07:00
Dmitry Gozman
e5ff283a40
fix(trace): only enable on separate tracing bots ( #3677 )
2020-08-28 13:50:06 -07:00
Pavel Feldman
6ffdd4dfa1
feat(testrunner): allow unexpected passes ( #3665 )
2020-08-28 00:32:00 -07:00
Pavel Feldman
15ec87dbcc
feat(testrunner): support --retries, flaky tests ( #3649 )
2020-08-26 16:32:47 -07:00
Pavel Feldman
adc2a44113
infra: simplify test results collection ( #3623 )
2020-08-25 15:46:42 -07:00
Pavel Feldman
06dcf967ba
feat(testrunner): allow external reporters ( #3603 )
2020-08-24 19:16:20 -07:00
Joel Einbinder
012f9425bf
chore(test-runner): move into its own folder and typescript project ( #3548 )
2020-08-20 16:04:27 -07:00
Pavel Feldman
30f4c0c9fe
test runner: remove dependencies on playwright ( #3539 )
2020-08-19 17:47:24 -07:00
Max Schmitt
e679b82339
fix(devops): auto roll tests ( #3536 )
2020-08-19 15:04:52 -07:00
Max Schmitt
8ea280090d
devops: first implementation of browser auto-roll bot ( #3455 )
...
Relates #3258
After a chat with @aslushnikov we add this in two iterations. The first one (this PR) is about scheduled runs for testing the latest tip-of-tree version of the browsers daily and the next PR is about opening an automated PRs once its passing (not sure if its worth to add for failing too) or sending Telegram/Slack notifications.
Current status is that Firefox (around 2 hours) and WebKit (around 3-4 hours) works.
Known issues which I fix before we merge:
- ~~Changes in `test/base.fixture.ts` will get extracted in #3453~~
Feel free to review, current blockers are before we can merge:
- ~~#3453~~
- potential git clone optimisation by aslushnikov
2020-08-17 11:23:46 -07:00
Pavel Feldman
262e886940
test: organize golden files under __snapshots__ folder ( #3494 )
2020-08-16 19:19:52 -07:00
Dmitry Gozman
9b52ca8676
chore: remove unused non-rpc code, test options, infra, bots ( #3444 )
2020-08-13 16:00:23 -07:00
Dmitry Gozman
84ca0120f8
test: upload output from headful bots ( #3439 )
2020-08-13 09:33:43 -07:00
Joel Einbinder
d3677357b8
feat(testrunner): take the first argument as the test root dir ( #3423 )
2020-08-12 20:01:13 -07:00
Yury Semikhatsky
f0fcdc8f51
test(firefox): make headful screencast tests work under xvfb ( #3421 )
2020-08-12 16:07:01 -07:00
Pavel Feldman
a4a07c46c3
test: support --grep, --forbid-only ( #3417 )
2020-08-12 14:57:37 -07:00
Pavel Feldman
962ddc09c4
test: consolidate runner files ( #3415 )
2020-08-12 13:47:44 -07:00
Pavel Feldman
7e07634cc6
test: use mocha in ci/cd ( #3406 )
2020-08-12 11:48:30 -07:00
Dmitry Gozman
8bb6d73b44
feat(rpc): keep non-rpc linux bots for now ( #3381 )
2020-08-10 20:49:53 -07:00
Ross Wollman
cbd33f9601
devops: avoid running publish on external contrib ( #3257 )
...
Everytime I sync my fork to upstream, I get failure notifications:
```
Run failed for master (3edfb2a
)
Repository: rwoll/playwright
Workflow: devrelease
Duration: 10 minutes and 34.0 seconds
Finished: 2020-07-31 18:30:13 UTC
```
Since forks should never have the necessary secrets to publish
the npm and Docker packages, we limit the running of these jobs to avoid
noisy failures for contributors.
2020-07-31 14:09:36 -07:00
Andrey Lushnikov
421f6f48c7
devops: use playwright-github-action@v1 ( #3221 )
...
The playwright-github-action@v1 now points to v1.4.3, so we can
switch to it once again.
2020-07-30 17:47:39 -07:00
Andrey Lushnikov
e7ddf868bf
devops: rename docker image tag for tip-of-tree images ( #3222 )
...
We currently tag tip-of-tree docker images with `dev` tag. It'll
be much nicer to have consistent taggin with our `npm` which tags
with `next` tag.
This patch removes the `dev` tag and starts using the `next` tag instead
for docker images. Since we haven't announced `dev` tag support
anywhere, I think it's fine to remove it rather than have both `next`
and `dev`.
2020-07-30 11:45:54 -07:00
Andrey Lushnikov
77b1c4b883
devops: enable Ubuntu 20.04 tests ( #3178 )
2020-07-29 11:36:38 -07:00
Yury Semikhatsky
79ab07bd0d
devops: install Media Pack on Windows bot ( #3137 )
2020-07-23 18:06:16 -07:00
Dmitry Gozman
d234dac752
chore: support esm imports ( #3125 )
2020-07-23 15:14:36 -07:00
Joel Einbinder
773ee08e9d
chore(test): restore api coverage checks ( #3068 )
...
* chore(test): restore api coverage checks
* try to catch the correct error on the bots
* try to trick github into taking the new code
* uninstall coverage
* dgozman comments
2020-07-22 09:08:10 -07:00
Joel Einbinder
3c151d8f1d
fix(test): don't output babel's debug info on the bots ( #3073 )
2020-07-21 16:23:46 -07:00
Pavel Feldman
b5f9985d3a
devops: make headful a matrix, collect test results ( #3027 )
2020-07-18 10:50:58 -07:00
Andrey Lushnikov
7d2078ef6f
devops: bake browsers into Docker image ( #2990 )
...
This patch bakes browsers into docker image.
Important observations:
- We now re-build docker image everytime we roll browsers.
- Docker image size almost doubles: from `225MB` to `496MB`.
References #2926
2020-07-17 16:51:39 -07:00
Pavel Feldman
9d9801192e
test: wire test commands to jest ( #3014 )
2020-07-17 16:09:27 -07:00
Pavel Feldman
424f11d165
test: convert some tests to the jest+fixtures ( #2983 )
2020-07-16 16:59:45 -07:00
Pavel Feldman
ecc130c644
test: convert evaluation.spec to jest+fixtures ( #2968 )
2020-07-16 11:18:38 -07:00
Pavel Feldman
19cd96c46a
test: add the jest-circus experimental runner ( #2962 )
2020-07-15 16:52:41 -07:00
Andrey Lushnikov
d58a57c4b2
devops: fix docker publishing ( #2939 )
...
- Repository name has to start with `public/` to be exported to dockerhub.
- Remove `DOCKER_USERNAME` to avoid unnecessary masking in our logs.
- Publish dev versions of Docker image only when changes to docker file
happen. (this is why NPM publishing and Docker publishing for dev
releases are now separate).
- Release publishing in two separate jobs to make them independent.
References #2926
2020-07-13 17:15:10 -07:00
Andrey Lushnikov
b7d68d1cdb
devops: automate Docker image publishing ( #2937 )
...
This starts publishing our Docker images using Github Actions:
- on every commit, a new image will be pushed, tagged with a SHA of the
commit, e.g.
`mcr.microsoft.com/playwright:sha-fe997eca88d6de48378b05133dadfe032bd8b0ea`
- on every release, a new image will be pushed, tagged with the release
version, e.g. `mcr.microsoft.com/playwright:v1.2.1`
**Note:** today we don't version our images and instead push them all as
`bionic`. This patch retains the tag - along with `latest`. Both
`bionic` and `latest` tags will point to the latest release.
2020-07-13 16:18:51 -07:00
Dmitry Gozman
2151757621
feat(rpc): run rpc tests in-process and out-of-process ( #2929 )
2020-07-13 15:00:20 -07:00
Dmitry Gozman
6d94c92053
feat(rpc): support no-serialization mode, run hook tests ( #2925 )
...
Added rpc_json_linux bots to excercise serialization - these
do not run hook tests.
2020-07-13 08:31:20 -07:00
Pavel Feldman
982e5e3550
devops: collect artifacts from browser locations ( #2913 )
2020-07-10 16:15:00 -07:00
Pavel Feldman
d561465214
devops: use matrix in GHA, add non-linux rpc ( #2907 )
2020-07-10 13:15:57 -07:00
Dmitry Gozman
5c4751d5dd
chore: generate protocol during browser roll ( #2719 )
...
We now commit protocol.ts files during the roll.
New utils/roll_browser.js helps with that.
This makes our installation very shallow:
- build installer;
- download browsers.
2020-07-01 15:22:29 -07:00
Andrey Lushnikov
6afb38d32f
devops: remove folder creation in github actions ( #2779 )
...
This should be no longer required.
2020-06-30 23:34:36 -07:00
Pavel Feldman
10a9eef832
chore(rpc): add a channel bot ( #2773 )
2020-06-30 18:51:36 -07:00
Yury Semikhatsky
22b4a6bd27
devops: enable coredumps for headful tests ( #2678 )
2020-06-23 17:18:29 -07:00
Yury Semikhatsky
49cb96c433
devops: enable core dumps in the subshell ( #2555 )
2020-06-11 23:58:24 -07:00
Yury Semikhatsky
48088222ed
devops: enable core dumps on Linux CI ( #2552 )
2020-06-11 16:41:58 -07:00
Andrey Lushnikov
37ec3a6ae6
fix(types): properly export typescript types from packages ( #2364 )
...
Drive-by: move package tests from `//test/installation-tests` to
`//packages/installation-tests`
Fix #2349
2020-05-26 17:19:05 -07:00
Dmitry Gozman
963dc72dd2
devops: add headful linux bot ( #2060 )
2020-05-04 15:15:51 -07:00
Ross Wollman
995c3eb4b5
devops: run install tests on common node versions ( #2069 )
...
Fixes #2059
2020-05-01 00:10:52 -07:00
Arjun Attam
c921cc19ec
chore: use xvfb from newer github action ( #2035 )
2020-04-29 15:07:21 -07:00
Andrey Lushnikov
0b7f789de4
devops: try using another Github Actions event to trigger releases ( #1931 )
...
The [official
documentation](https://help.github.com/en/actions/language-and-framework-guides/publishing-nodejs-packages#publishing-packages-to-the-npm-registry )
suggests using `created` event, but it didn't work for us.
As someone mentioned on [github
community](https://github.community/t5/GitHub-Actions/Workflow-set-for-on-release-not-triggering-not-showing-up/m-p/53236#M8758 ),
it looks like the `created` event is actually issued when release draft
is first created.
Try using
[`published`](https://help.github.com/en/actions/reference/events-that-trigger-workflows#release-event-release )
event instead.
2020-04-22 22:52:32 -07:00
Andrey Lushnikov
c474c540a3
devops: run CI against release branches too ( #1910 )
2020-04-21 19:20:19 -07:00
Andrey Lushnikov
0f338eced7
devops: introduce release publishing workflow ( #1894 )
...
This workflow is based on the Github Actions docs: [publishing node.js
packages](https://help.github.com/en/actions/language-and-framework-guides/publishing-nodejs-packages )
It should be triggered once we create a github release.
It's unclear how to test this workflow, so I tried to re-use as much
code from `publish_canary.yml` as possible.
2020-04-21 15:10:00 -07:00
Andrey Lushnikov
ac8a30c526
devops: start releasing from Github Actions ( #1890 )
...
This patch:
- removes releasing from Travis CI
- sets up a new GH Action that releases @next version from tip-of-tree
Once this GH Action proves to be working, we'll setup a `publish_release.yml`
workflow that will be triggered only by **release** github events
and that will publish released version with `LATEST` tag.
NOTE: this workflow does not actually run publishing - we're doing
`--dry-run` for now to see how it works in
`//utils/publish_all_packages.sh`.
2020-04-20 17:45:29 -07:00
Andrey Lushnikov
193582445d
devops: add package-lock.json ( #1859 ) ( #1889 )
...
We need to commit `package-lock.json` to repository to ensure
reproducible builds.
This also starts using [`npm ci`](https://docs.npmjs.com/cli/ci.html ) to
install dependencies.
Drive-by: remove non-functioning `rebase` workflow.
2020-04-20 16:57:01 -07:00
Pavel Feldman
92b6bc0eb9
Revert "devops: add package-lock.json ( #1859 )"
...
This reverts commit 75f35e48a8
.
It is unclear how to add/remove dependencies now.
2020-04-18 22:27:25 -07:00
Andrey Lushnikov
75f35e48a8
devops: add package-lock.json ( #1859 )
...
We need to commit `package-lock.json` to repository to ensure
reproducible builds.
This also starts using [`npm ci`](https://docs.npmjs.com/cli/ci.html ) to
install dependencies.
Drive-by: remove non-functioning `rebase` workflow.
2020-04-18 22:14:06 -07:00
Andrey Lushnikov
52fe02eea6
devops: enforce strict treatment of unhandled rejections ( #1789 )
...
Run all our tests with node.js flag `--unhandled-rejections=strict`.
2020-04-14 22:40:33 -07:00
Dmitry Gozman
274c6c1450
test(chromium): add more oopif tests ( #1685 )
2020-04-14 13:00:10 -07:00
Dmitry Gozman
7189d19913
feat(ci): upload test output folder from github actions ( #1733 )
2020-04-09 16:57:01 -07:00
Arjun Attam
d5a746aaba
chore(ci): use playwright github action ( #1712 )
2020-04-08 15:23:00 -07:00
Andrey Lushnikov
65ca87cd9a
fix: fix PLAYWRIGHT_BROWSERS_PATH treatment ( #1662 )
...
Drive-by: introduce installation tests that use `npm pack`
to simulate installation from NPM registry.
Fixes #1651
2020-04-03 23:16:14 -07:00
Max Schmitt
692f4db0a7
devops(ci): added job for testing package installations ( #1572 )
...
Closes #1518
2020-04-02 11:25:03 -07:00
Andrey Lushnikov
19dd2338d9
devops: remove verbose on WebKit Win on Github Actions
2020-03-13 14:44:54 -07:00
Andrey Lushnikov
5c9ebfaa79
chore(ci): bump checkout action to v2 ( #1263 )
...
This should fix the checkout problems we're facing.
Related discussion: https://github.com/actions/checkout/issues/23
2020-03-06 09:40:54 -08:00
Andrey Lushnikov
0ded511d0b
feat(testrunner): better matchers ( #1077 )
...
This patch re-implements matching and reporting for test runner.
Among other improvements:
- test failures now show a short snippet from test
- test failures now explicitly say what received and what was expected
- `expect.toBe()` now does text diff when gets strings as input
- `expect.toEqual` now does object diff
2020-02-20 22:55:39 -08:00
Andrey Lushnikov
9caa61aed1
devops: upload logs for test runs ( #1015 )
2020-02-14 19:02:17 -08:00
Andrey Lushnikov
2e9e0b77bf
devops: rename bots to feature browser first
2020-02-14 13:32:55 -08:00
Andrey Lushnikov
b041ce6219
devops: enable debugging on WK Windows
2020-02-13 17:48:45 -08:00
Andrey Lushnikov
1945ed7232
devops: run API coverage tests on linux ( #958 )
2020-02-12 14:43:13 -08:00
Andrey Lushnikov
5956df58f8
devops: re-factor github workflow internal structure ( #956 )
2020-02-12 13:52:06 -08:00
Joel Einbinder
a4d0187cb8
chore: mac build bots ( #734 )
2020-02-12 12:30:47 -08:00
Andrey Lushnikov
1f29930201
devops: add docs & lint github workflow ( #953 )
2020-02-12 11:50:20 -08:00
Andrey Lushnikov
0de625d3ac
Revert "devops: add docs & lint github workflow"
...
This breaks YML syntax in GH workflows
2020-02-12 11:45:16 -08:00
Andrey Lushnikov
7ec7f72a74
devops: add docs & lint github workflow
2020-02-12 11:44:28 -08:00
Andrey Lushnikov
f114255a3d
devops: attempt to fix chromium linux bot
2020-02-05 11:58:16 -08:00
Joel Einbinder
e131fe0cee
fix(chromium): install libgbm ( #773 )
...
The new Chromium (#771 ) requires [`libgbm1`](https://packages.debian.org/sid/libgbm1 ) to be installed. Install it manually on the bots, and add it to troubleshooting.md.
2020-01-30 15:54:53 -08:00
Joel Einbinder
184b25ff7b
chore: windows bots via github actions ( #678 )
...
Mac will come in a follow up!
As a drive-by, removed npm build everywhere, because npm install already runs build.
2020-01-28 18:04:51 -08:00
Andrey Lushnikov
9cd61571f1
devops: add auto-rebase github action
...
The action is triggered with a `/rebase` comment.
Details: https://github.com/cirrus-actions/rebase
2020-01-28 11:14:04 -08:00
Andrey Lushnikov
f88a3f304a
devops(ci): remove installation of glib-networking in GH Workflow
...
We now bundle glib-networking with WK on linux.
2020-01-17 21:43:28 -08:00
Andrey Lushnikov
39ca494945
devops(ci): another attempt to fix tls errors
2020-01-17 20:28:36 -08:00
Andrey Lushnikov
6eb8e9ae8f
devops(ci): install glib-network to enable TLS for webkit
2020-01-17 20:18:31 -08:00
Andrey Lushnikov
29bfb3fa11
devops(ci): remove debug output for webkit tests
2020-01-17 20:13:54 -08:00
Andrey Lushnikov
da52217b7b
devops(ci): drop the pw_run.sh from dbg output
2020-01-17 20:09:28 -08:00
Andrey Lushnikov
06a9dcd9e3
devops(ci): install missing dependency for webkit workflow
2020-01-17 20:02:54 -08:00
Andrey Lushnikov
fa850224b6
devops(ci): improve logging
2020-01-17 19:58:17 -08:00
Andrey Lushnikov
f702dd9d8a
devops(ci): add debug output for WK workflow
2020-01-17 19:46:59 -08:00
Andrey Lushnikov
9d14a54655
devops(ci): attempt to fix webkit workflow
2020-01-17 19:40:42 -08:00
Andrey Lushnikov
64560b1bfa
devops: drop DUMPIO from webkit test runs
2020-01-13 17:28:14 -08:00
Andrey Lushnikov
2362d38e59
devops(ci): update webkit.yml github actions
2020-01-13 17:21:56 -08:00
Joel Einbinder
b7ac026e55
Update webkit.yml
...
this line didn't make sense to me so i'll delete it and see what happens.
2020-01-09 17:07:22 -08:00
Joel Einbinder
aa7096d2c7
Update webkit.yml
...
try to fix the webkit build.
2020-01-09 17:03:16 -08:00
Joel Einbinder
fea801659d
chore(github): only run tests on the master branch ( #446 )
2020-01-09 14:29:19 -08:00
Andrey Lushnikov
3ba591b9d1
chore(ci): iterate on debug output for GH Action
2019-12-19 17:41:01 -08:00
Andrey Lushnikov
d5c3fa2f03
chore: debug output for webkit github action
2019-12-19 17:39:24 -08:00
Andrey Lushnikov
cdace02e62
devops: create different workflows for different browsers
2019-12-11 17:30:14 -08:00
Andrey Lushnikov
40ae745db7
devops: fix github action
2019-12-11 17:22:51 -08:00
Andrey Lushnikov
9cb34306a3
devops: remove extra github action
2019-12-11 17:21:40 -08:00
Andrey Lushnikov
160fc9fae3
devops: enable Linux Github actions
2019-12-11 17:20:46 -08:00