Commit Graph

39 Commits

Author SHA1 Message Date
Andrey Lushnikov 09c35adbd5
browser(firefox): roll firefox-beta to Apr 20, 2021 - version 89.0b2 (#6247) 2021-04-20 13:27:57 -07:00
Joel Einbinder 2357f0b562
browser(firefox): fix bootstrap on bots with --no-interactive (#6047)
The command --no-interactive moved and broke our build. See https://bugzilla.mozilla.org/show_bug.cgi?id=1695272
2021-04-02 07:52:42 -07:00
Andrey Lushnikov 18ce95632f
devops: fix firefox build (#5516) 2021-02-19 10:52:12 -08:00
Andrey Lushnikov b2d9af5e15
browser(firefox): properly initialize debugging pipe on windows (#5514)
browser(firefox): properly initialize debugging pipe on windows

Firefox on Windows has 2 launch modes:
- default: a special "launcher process" is used to start browser as a
  sub-process
- non-default: browser process starts right away

Firefox has a logic to detect how successful was the use of the
launcher process to do self-recovery when things go wrong. Namely:
- when attempting to use launcher process, firefox records a timestamp
  of the attempt beginning
- once the launcher process successfully launches browser sub-process,
  firefox records another timestamp of the completion

On a new launch, firefox checks what timestamps are present. If there's
a timestamp that signifies start of launcher process, but no successful
timestamp, it decides that last "launcher process" use was not
successful and falls back to launching browser right away.

When launching 2 firefox processes right away, the first process
uses attempts to use launcher process and records the first timestamp.

At the same time, the second instance sees the first timestamp and
doesn't see the second timestamp, and falls back to launching browser
right away. Our debugging pipe code, however, does not support
non-launcher-process code path.

This patch adds support for remote debugging pipe in case of
non-launcher-process startup.

Drive-by:
- disable crashreporter altogether
- remove stray dcheck that breaks firefox debug compilation
- disable compilation of firefox update agent
- do not use WIN32_DISTRIB flag unless doing full builds since
  it kills incremental compilation


References #4660
2021-02-19 10:32:47 -08:00
Andrey Lushnikov 8d4dc600f8 devops(firefox): properly cleanup old node.js artifact 2021-02-02 23:59:33 -07:00
Andrey Lushnikov 986bddaecc devops(firefox): fix arm build dependency management 2021-02-02 23:03:54 -07:00
Andrey Lushnikov 11f570be61
devops(firefox): fix Firefox on Apple Silicon (#5272)
As per guide at https://docs.google.com/document/d/1N5yfEVEISofMmjAxfj3xXONGwyQYBSilsfXqux_M6TM/edit
2021-02-02 21:53:23 -08:00
Andrey Lushnikov b392c57a53
devops: attempt to install Firefox build deps on buildbots (#5271) 2021-02-02 21:35:12 -08:00
Andrey Lushnikov e53c9c35db
browser(firefox): roll Firefox to beta @ Feb, 1 2021 (#5248) 2021-02-01 15:50:11 -08:00
Andrey Lushnikov 7665a6ec7f
devops: support apple silicon builds of Firefox (#4979) 2021-01-12 03:57:59 +03:00
Andrey Lushnikov 6b94f5f1b9
browser(firefox): roll Firefox to beta @ Jan 5, 2021 (#4904) 2021-01-06 02:49:28 +03:00
Andrey Lushnikov 0af34a4f0b
devops: firefox build now requires newer MacOS SDK to build against (#4732) 2020-12-15 16:27:34 -08:00
Andrey Lushnikov 5f6ccee742
browser(firefox): roll Firefox to beta Dec 14, 2020 (#4716)
Merge conflicts: 57ba98733f
2020-12-14 15:28:48 -08:00
Andrey Lushnikov 6fe7d9c19f
devops: support FF_CHECKOUT_PATH to customize browser checkout (#4607)
**Preamble**

1. We're trying to setup a windows-based github self-hosted runner in the
  playwright-internal repo.
1. Commands on Windows are mandated to have total arguments length
  less then 32767 characters.
1. On windows, github self-hosted runner framework puts repository
checkout at `c:\w\playwright-internal\playwright-internal`
1. Our scripts create a checkout at
`c:\w\playwright-internal\playwright-internal\browser_patches\firefox\checkout`
1. One of the scripts in Firefox buildsystem tries to execute a command,
passing lots of absolute paths to various webidl's
1. The command fails due to restriction in (2)

**Problem**

Firefox build fails since checkout is deeply nested and hits max arg
size on windows.

**Solution**

This patch introduces a new variable `FF_CHECKOUT_PATH` that is
respected by all browser-related scripts. This way we'll be able
to checkout firefox to `c:\firefox` and avoid hitting long arguments
limit.
2020-12-04 18:46:20 -08:00
Andrey Lushnikov 31e22dee50
devops(win): fix paths to vswhere.exe in 64-bit shells (#4577)
The `$PROGRAMFILES` variable is defined per the bitness of the
application: 32-bit shells get `C:\Program Files (x86)`, whereas
64-bit shells get `C:\Program Files`.

Visual Studio, however, has only 32-bit build and is always located in
the `C:\Program Files (x86)` folder.

This patch fixes `//browser_patches/firefox/build.sh` on 64-bit windows
shell.
2020-12-03 08:09:05 -08:00
Yury Semikhatsky 040f9b04ca
browser(webkit): copy MS VC++ redistributable libs from VS installation (#4360) 2020-11-05 16:51:42 -08:00
Yury Semikhatsky aafcf932bc
browser(firefox): bundle VS C++ redistributable dlls (#4359) 2020-11-05 13:56:15 -08:00
Andrey Lushnikov c5d3490b34
browser(firefox): roll firefox to beta Oct, 28 (#4274) 2020-10-28 14:47:14 -07:00
Andrey Lushnikov 6a7d24469a
devops: fix firefox build (#4088)
New firefox build requires a pre-created python virtual environment.
We should detect it and create if necessary.

References #3995
2020-10-07 14:34:58 -07:00
Yury Semikhatsky 56da4bb027
devops: make sure rust toolchain is installed (#3485)
Otherwise if required version is not installed the build fails with a cryptic message like
`error: toolchain '1.45.0-x86_64-unknown-linux-gnu' does not support components`
2020-08-19 09:11:28 -07:00
Andrey Lushnikov 915902c858
browser(firefox): roll Firefox to roughly July, 15 (#3411) 2020-08-12 10:09:20 -07:00
Andrey Lushnikov 25089760fd
devops: fix typo in rustup detection (#3282)
This should bring back docker build.
2020-08-04 00:02:14 -07:00
Andrey Lushnikov 9103ce0060
devops: fix firefox build (#3237) 2020-07-30 11:50:52 -07:00
Andrey Lushnikov 4961c2ddbb
devops(firefox): fixate rust and cbindgen version (#3223)
Firefox buildchain does not fixate `rust` and `cbindgen` versions,
so we want to fixate them on our end.

A table with matching rust version for every firefox version can
be found at [Rust Update Policy for Firefox](https://wiki.mozilla.org/Rust_Update_Policy_for_Firefox).

Additionally, there are checks in `mozbuild` for the minimum
rust version and minimum `cbindgen` version.
2020-07-30 09:59:39 -07:00
Andrey Lushnikov 31da3d3720
browser(firefox): roll Firefox to TOT beta branch as of Jun 9, 2020 (#2520)
With this roll, we now require MacOS 10.11 SDK to build on Mac.
2020-06-09 22:48:10 -07:00
Andrey Lushnikov 95ef71c43c
devops: support `--juggler` argument for `firefox/build.sh` script (#2472) 2020-06-04 14:26:51 -07:00
Pavel Feldman a46a32426e
browser(firefox): roll to ToT 4/15/2020 (#1815) 2020-04-15 17:31:59 -07:00
Andrey Lushnikov 21630d6de4
devops: strictly configure build folder for Firefox builds (#1454)
This strictly defines Firefox build folder as `obj-build-playwright`.

Currently, Firefox build folder encodes current Mac OS version including
patch versions, and thus we might end up with multiple different build
folders.
2020-03-20 19:24:38 -07:00
Andrey Lushnikov efa567d1b4 devops: fix firefox preferences build on mac 2020-02-11 16:22:31 -08:00
Andrey Lushnikov 3a32b14f32 devops: bundle firefox preferences alongside with build. 2020-02-11 14:42:04 -08:00
Andrey Lushnikov e64fd173bb devops: fix firefox building script on Mac 10.15.1 2020-01-29 11:55:29 -08:00
Andrey Lushnikov 9e381a9d50 devops(firefox): move packaging to archive.sh 2019-12-11 16:56:49 -08:00
Andrey Lushnikov cb92cd0d5c devops: teach {firefox,webkit}/build.sh to build current branch
The check for the proper branch has moved to
`checkout_build_archive_upload.sh` script.
2019-12-09 14:38:23 -08:00
Andrey Lushnikov a4d6175760 devops: support firefox-win64 builds 2019-11-22 20:49:40 -08:00
Andrey Lushnikov 26fef7bc46 devops: support firefox-win32 builds 2019-11-22 15:45:36 -08:00
Andrey Lushnikov 98e05b66fd devops: revamp scripts 2019-11-21 17:29:40 -08:00
Andrey Lushnikov bfcd92da7e devops: fix build scripts 2019-11-19 16:58:09 -08:00
Andrey Lushnikov 8a077da565 devops: simplified bash traps 2019-11-19 16:33:11 -08:00
Pavel Feldman 9ba375c063 Initial commit 2019-11-19 10:58:15 -08:00