Andrey Lushnikov
d61862094e
devops: do not compile NaCL for chromium ( #12508 )
2022-03-04 14:38:02 -08:00
Max Schmitt
6ec00a9ae5
devops: require Xcode 13.2 for CR ( #12194 )
2022-02-17 22:21:12 +01:00
Andrey Lushnikov
51f714f235
chore: split out Chromium mirroring to a separate script ( #10399 )
...
#10398
2021-11-17 16:57:04 -08:00
Andrey Lushnikov
bc1ed831b2
devops: fix chromium checkout ( #10288 )
...
Use `main` branch for all chromium-related projects.
2021-11-12 10:23:22 -08:00
Andrey Lushnikov
c91ce5401e
devops: try compiling 64-bit arm Chromium ( #9990 )
...
Turned out we currently compile armhf chromium, which is 32bit.
2021-11-02 14:52:12 -07:00
Andrey Lushnikov
d2c1922e14
devops: fix chromium linux arm64 bit build ( #9968 )
...
Drive-By: this should also fix chromium-with-symbols build to actually
have symbols!
2021-11-02 03:50:33 -07:00
Andrey Lushnikov
3b545b86bc
devops: support --full argument for chromium compilation ( #9965 )
...
Like our other browser build scripts, chromium build now supports
`--full` flag to install all the required dependencies.
2021-11-02 03:23:15 -07:00
Andrey Lushnikov
49cda3d3df
devops: fix sysroot installation for Chromium Arm64 linux builds ( #9950 )
2021-11-01 17:05:39 -07:00
Andrey Lushnikov
a8d276e223
devops: support Chromium Linux for Arm64 compilation ( #9863 )
2021-10-28 13:42:41 -07:00
Andrey Lushnikov
544dcd8804
devops: default chromium checkout to $HOME/chromium ( #9859 )
...
This defaults Chromium checkout to $HOME/chromium unless a
`CR_CHROMIUM_CHECKOUT` is specified.
2021-10-28 11:48:57 -07:00
Andrey Lushnikov
47d9b23949
devops: drop infra for building 32-bit windows browsers ( #9834 )
2021-10-27 17:20:23 -07:00
Andrey Lushnikov
610067f61c
devops: fix chromium build with symbols ( #8550 )
2021-08-30 07:48:40 -07:00
Andrey Lushnikov
eda2ee5c2a
devops: disable dchecks when building chromium ( #8067 )
...
As of https://chromium-review.googlesource.com/c/chromium/src/+/3053740 ,
Chromium defaults to building with dchecks always on.
We don't want dchecks enabled in our builds so we must disable them
explicitly.
References #8052
2021-08-07 05:41:13 -07:00
Andrey Lushnikov
b1b4d7b819
chore: quote all bash variables when used ( #8066 )
...
This way bash won't expand and post-process variable values in any way.
The changes are driven with
[`shellcheck`](https://github.com/koalaman/shellcheck )
2021-08-07 05:32:18 -07:00
Andrey Lushnikov
64ef88999e
devops: fix chromium build script ( #7669 )
2021-07-16 02:36:49 -07:00
Andrey Lushnikov
34777853f7
devops: enforce hard xcode version match for browser builds ( #7591 )
...
Browsers require particular xcode versions to be installed on the host
machine to produce successful build.
This patch starts using explicit xcode versions for all mac browser
builds.
2021-07-13 18:12:53 -07:00
Andrey Lushnikov
bb5da5061c
devops: support building chromium with symbols ( #7131 )
...
References #7130
2021-06-15 01:18:00 -07:00
Andrey Lushnikov
c57f1fc390
devops(chromium): missing depot tools in prepare_checkout.sh script ( #5525 )
...
Make sure `prepare_checkout.sh` has depot_tools in its PATH.
Drive-by: enable goma compiler proxy auto-restart.
2021-02-19 14:23:09 -08:00
Andrey Lushnikov
8c18b90038
devops: refactor chromium automation scripts ( #5486 )
...
Split preparing checkout, archiving and compiling into separate
scripts similarly how we do it with other browsers.
2021-02-17 14:43:19 -08:00
Andrey Lushnikov
8500592326
devops: fix post-checkout cleanup on windows ( #5438 )
...
Turns out empty trailing space in array in bash results in a file
in windows that it fails to remove while during cleanup.
2021-02-12 01:48:11 -08:00
Andrey Lushnikov
539942c803
devops: empty commit to test internal tests
2021-02-12 02:21:39 -07:00
Andrey Lushnikov
2ac93f0a8b
devops: another attempt to trigger internal tests (empty commit)
2021-02-12 02:07:22 -07:00
Andrey Lushnikov
17b792bcf5
devops: attempt to trigger internal tests (empty commit)
2021-02-12 02:05:45 -07:00
Andrey Lushnikov
44ff8b518b
devops: fix win archiving logic ( #5420 )
...
One can't use "for-of" iteration over bash arrays if values
contain strings :(
2021-02-11 08:18:05 -08:00
Andrey Lushnikov
db633c4491
devops: fix args.gn syntax with goma
2021-02-09 10:11:03 -07:00
Andrey Lushnikov
32d62a5c2d
devops: fix goma path on windows ( #5381 )
...
Convert unix path to win path when running GOMA on windows.
2021-02-09 09:06:50 -08:00
Andrey Lushnikov
d5a51a25b0
devops: fix chromium-win build ( #5378 )
...
- add missing build targets
- do not copy *.pdb files in folders
2021-02-09 08:49:59 -08:00
Andrey Lushnikov
ad557dc6da
devops: introduce goma infrastructure for Chromium builds ( #5377 )
...
This patch adds `//browser_patches/chromium/goma.sh` script that
manages goma to build chromium.
2021-02-09 08:33:39 -08:00
Andrey Lushnikov
f3a5bba2c4
devops: infra to automate chromium builds ( #5347 )
2021-02-07 23:54:10 -08:00
Andrey Lushnikov
985dd5666f
devops(chromium): fix chromium linux build
2021-02-03 07:35:29 -07:00
Andrey Lushnikov
7b5363198b
devops: fix chromium build on Intel MacBook ( #5242 )
2021-02-01 09:30:04 -08:00
Andrey Lushnikov
01bddcd171
devops(chromium): account for terminated / interrupted jobs
2021-01-28 13:15:23 +03:00
Andrey Lushnikov
c9fae65400
devops: fix chromium checkout
2021-01-28 12:56:45 +03:00
Andrey Lushnikov
75a0d7a76b
devops(chromium): install depot_tools if missing ( #5204 )
2021-01-28 01:43:54 -08:00
Andrey Lushnikov
51d90c593b
devops: support Chromium mac compilation ( #5202 )
2021-01-28 01:14:44 -08:00
Andrey Lushnikov
b323018881
devops: fetch chromium checkout if it has not been before ( #5169 )
...
Checkouts should reside outside of gihtub action working directory
so will be reused between builds.
2021-01-28 00:20:19 -08:00
Andrey Lushnikov
90bc837e55
devops: start compiling Chromium on Linux ( #5166 )
2021-01-27 08:42:35 -08:00
Andrey Lushnikov
b88afe5877
devops: fix chromium for arm build ( #5117 )
2021-01-23 02:23:59 +03:00
Andrey Lushnikov
546454095e
devops: attempt to fix chromium-mac-arm64 build ( #5107 )
...
It looks like gn generation should use correct xcode version as well.
2021-01-22 15:47:24 +03:00
Andrey Lushnikov
2096f4248a
devops: fix chromium compilation step ( #5102 )
2021-01-22 11:31:26 +03:00
Andrey Lushnikov
ff75073cc8
devops: automation to compile chromium for mac arm64 ( #5101 )
...
References #5067
2021-01-22 11:27:40 +03:00
Andrey Lushnikov
638c77c8e2
devops: stop bundling FFMPEG with Chromium ( #3806 )
...
- This stops bundling FFMPEG with Chromium
- Stop supporting build numbers as fractional parts for Chromium
revisions
2020-09-08 17:05:21 -07:00
Andrey Lushnikov
bcb4944f1b
devops: auto-detect platform in //browser_patches/chromium/build.sh
( #3772 )
...
If there's no platform specified for the chromium build, we should
detect the host platform.
This will make it pleasant to verify Chromium rolls locally.
Assuming there's a `CR` env variable pointing to the local chromium,
rolling would look like this:
- bump a revision in `//browser_patches/chromium/BUILD_NUMBER`
- run `//browser_patches/chromium/build.sh`
- run tests with pulled chromium: `CRPATH=$CR npm run ctest`
2020-09-04 04:23:13 -07:00
Andrey Lushnikov
f09145e504
chore: fix typo in build script
2020-09-04 03:16:46 -07:00
Andrey Lushnikov
a755d100b3
devops: encode build number together with Chromium revision ( #3769 )
...
This is an alternative approach to #3698 that was setting up a custom
mapping between chromium revisions and our mirrored builds. For example, we were
taking chromium `792639` and re-packaging it to our CDN as Chromium 1000.
One big downside of this opaque mapping was inability to quickly
understand which Chromium is mirrored to CDN.
To solve this, this patch starts treating browser revision as a fractional number,
with and integer part being a chromium revision, and fractional
part being our build number. For example, we can generate builds `792639`, `792639.1`,
`792639.2` etc, all of which will pick Chromium `792639` and re-package it to our CDN.
In the Playwright code itself, there are a handful of places that treat
browser revision as integer, exclusively to compare revision with some particular
revision numbers. This code would still work as-is, but I changed these places
to use `parseFloat` instead of `parseInt` for correctness.
2020-09-04 03:12:30 -07:00
Andrey Lushnikov
dfc0006b3b
devops: bundle ffmpeg with chromium ( #3767 )
...
This starts bundling FFMPEG v4.3.1 binary with Chromium archives on the
following platforms:
- chromium-mac
- chromium-win32
- chromium-win64
This specifically doesn't bundle FFMPEG with chromium-linux since we decided to use native ffmpeg on Linux instead.
FFMPEG binaries are compiled following these instructions:
- windows: https://gist.github.com/aslushnikov/422f1e1a57796a476bf73ebe04f2e5ac
- mac: https://gist.github.com/aslushnikov/abf71be5a0b12c33b320044785fcb3bc
Our versions of FFMPEG are ~2MB zipped.
References #3680
2020-09-04 02:18:36 -07:00
Andrey Lushnikov
fa8de99611
Revert "devops: revision Chromium repackaged builds separately ( #3698 )" ( #3763 )
...
This reverts commit fcc1680f98
.
2020-09-04 00:43:12 -07:00
Andrey Lushnikov
fcc1680f98
devops: revision Chromium repackaged builds separately ( #3698 )
...
Currently, we mirror Chromium revisions from gbuckets to our cdn and
name them same way as Chromium revision.
However, with the upcoming bundling of FFMPEG, we'd like to revision
Chromium packages separately, since our Chromium package will depend from
a number of factors:
- chromium upstream revision
- ffmpeg version
- extra files to add to the package or remove from the package
We should be able to produce a new Chromium build once any of these changes.
With this patch, to roll Chromium browser:
- update chromium revision number in the
`//browser_patches/chromium/UPSTREAM_CONFIG.sh`
- bump the build number in the `//browser_patches/chromium/BUILD_NUMBER`
Reference #3680
2020-08-31 10:44:33 -07:00
Andrey Lushnikov
f2088e068a
devops: fix Chromium repackaging to respect symlinks ( #3424 )
2020-08-12 18:29:37 -07:00
Andrey Lushnikov
8f30d15aca
devops: re-packge chromium on windows without interactive_ui_tests.exe
( #3375 )
...
This reduces archive size from 145MB to 97MB.
Fixes #3259
2020-08-10 15:00:37 -07:00