mirror of
https://github.com/microsoft/playwright.git
synced 2025-01-01 23:58:17 +03:00
devops: do not dedupe webkit archives (#15565)
The 2e331715ff
introduced
universal webkit build and tried re-using archive deduping technique
across all our regular JHBuild-based builds.
However, this turns out to be too aggressive and doesn't work. At least
on Ubuntu 18.04:
- `minibrowser-gtk/minibrowser` is identical to
`minibrowser-wpe/minibrowser`
- WPE gets symlinked into GTK
- Thus we now always start headed
This commit is contained in:
parent
01a5bfa45c
commit
38f8c92a28
@ -1,2 +1,2 @@
|
||||
1680
|
||||
Changed: lushnikov@chromium.org Tue Jul 12 00:36:09 MSK 2022
|
||||
1681
|
||||
Changed: lushnikov@chromium.org Tue Jul 12 14:07:22 MSK 2022
|
||||
|
@ -28,9 +28,9 @@ if ! [[ -d $(dirname "$ZIP_PATH") ]]; then
|
||||
exit 1
|
||||
fi
|
||||
|
||||
IS_UNIVERSAL=""
|
||||
IS_UNIVERSAL_BUILD=""
|
||||
if [[ $2 == "--universal" ]]; then
|
||||
IS_UNIVERSAL=1
|
||||
IS_UNIVERSAL_BUILD=1
|
||||
fi
|
||||
|
||||
main() {
|
||||
@ -67,7 +67,7 @@ createZipForLinux() {
|
||||
|
||||
# Generate and unpack MiniBrowser bundles for each port
|
||||
for port in gtk wpe; do
|
||||
if [[ -n "${IS_UNIVERSAL}" ]]; then
|
||||
if [[ -n "${IS_UNIVERSAL_BUILD}" ]]; then
|
||||
Tools/Scripts/generate-bundle \
|
||||
--syslibs=bundle-all \
|
||||
--bundle=MiniBrowser --release \
|
||||
@ -85,16 +85,14 @@ createZipForLinux() {
|
||||
|
||||
cd "$tmpdir"
|
||||
|
||||
# De-duplicate common files: convert to relative symlinks identical files (same hash).
|
||||
# Note: ubuntu 18.04 does not support "deterministic" argument.
|
||||
local CURRENT_HOST_OS="$(bash -c 'source /etc/os-release && echo $NAME')"
|
||||
local CURRENT_HOST_OS_VERSION="$(bash -c 'source /etc/os-release && echo $VERSION_ID')"
|
||||
if [[ "${CURRENT_HOST_OS}" == "Ubuntu" && "${CURRENT_HOST_OS_VERSION}" == "18.04" ]]; then
|
||||
rdfind -makesymlinks true -makehardlinks false -makeresultsfile false .
|
||||
else
|
||||
if [[ -n "${IS_UNIVERSAL_BUILD}" ]]; then
|
||||
# De-duplicate common files: convert to relative symlinks identical files (same hash).
|
||||
# We apply this algorithm only to unified build since in JHBuild WPE/Minibrowser
|
||||
# and GTK/Minibrowser executables are identical and should not be symlinked.
|
||||
rdfind -deterministic true -makesymlinks true -makehardlinks false -makeresultsfile false .
|
||||
symlinks -rc .
|
||||
fi
|
||||
symlinks -rc .
|
||||
|
||||
# zip resulting directory and cleanup TMP.
|
||||
zip --symlinks -r "$ZIP_PATH" ./
|
||||
cd -
|
||||
|
@ -66,13 +66,12 @@ build_wpe() {
|
||||
}
|
||||
|
||||
ensure_linux_deps() {
|
||||
SUDO="" ; [ $UID -ne 0 ] && SUDO="sudo"
|
||||
|
||||
# These two packages are needed to de-duplicate files on the GTK+WPE bundle and reduce its size.
|
||||
DEBIAN_FRONTEND=noninteractive ${SUDO} apt-get install -y symlinks rdfind
|
||||
|
||||
if [[ -n "${IS_UNIVERSAL_BUILD}" ]]; then
|
||||
DEBIAN_FRONTEND=noninteractive ${SUDO} apt-get install -y flatpak
|
||||
SUDO="" ; [ $UID -ne 0 ] && SUDO="sudo"
|
||||
# - flatpak drives the build
|
||||
# - symlinks and rdfind are needed to de-duplicate files on the GTK+WPE bundle to reduce its size.
|
||||
DEBIAN_FRONTEND=noninteractive ${SUDO} apt-get install -y flatpak symlinks rdfind
|
||||
fi
|
||||
|
||||
yes | DEBIAN_FRONTEND=noninteractive ./Tools/gtk/install-dependencies
|
||||
|
Loading…
Reference in New Issue
Block a user