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