From dd2e3d037bdfc4318aa8217ccdc9acf239559c8c Mon Sep 17 00:00:00 2001 From: TheSpad Date: Fri, 15 Mar 2024 17:31:40 +0000 Subject: [PATCH 1/2] Optimise playwright build and hope MS don't break it --- Dockerfile | 18 +----------------- Dockerfile.aarch64 | 18 +----------------- 2 files changed, 2 insertions(+), 34 deletions(-) diff --git a/Dockerfile b/Dockerfile index 4c631c0..8f06a7f 100644 --- a/Dockerfile +++ b/Dockerfile @@ -53,23 +53,7 @@ RUN \ git clone --depth 1 --branch "${PLAYWRIGHT_PY_RELEASE}" https://github.com/microsoft/playwright-python /tmp/playwright-python && \ cd /tmp/playwright-python && \ pip install -U --no-cache-dir . && \ - git clone --depth 1 --branch "${PLAYWRIGHT_PY_RELEASE}" https://github.com/microsoft/playwright /tmp/playwright && \ - cd /tmp/playwright && \ - npm ci && \ - npm run build && \ - # Don't build for other platforms - sed -i '/-darwin-x64/d' ./utils/build/build-playwright-driver.sh && \ - sed -i '/-darwin-arm64/d' ./utils/build/build-playwright-driver.sh && \ - sed -i '/-linux-arm64/d' ./utils/build/build-playwright-driver.sh && \ - sed -i '/-win-x64/d' ./utils/build/build-playwright-driver.sh && \ - # Don't download a static node binary, use the OS install - sed -i '/curl ${NODE_URL}/d' ./utils/build/build-playwright-driver.sh && \ - sed -i '/elif \[\[ "${ARCHIVE}" == "tar.gz" \]\]; then/,/else/d' ./utils/build/build-playwright-driver.sh && \ - sed -i '/cp .\/output\/${NODE_DIR}\/LICENSE .\/output\/playwright-${SUFFIX}\//d' ./utils/build/build-playwright-driver.sh && \ - sed -i 's/"..\/..\/${NODE_DIR}\/${NPM_PATH}"/\/usr\/lib\/node_modules\/npm\/bin\/npm-cli.js/' ./utils/build/build-playwright-driver.sh && \ - ./utils/build/build-playwright-driver.sh && \ - rm -rf /lsiopy/lib/python3.11/site-packages/playwright/driver/* && \ - cp -R ./utils/build/output/playwright-linux/* /lsiopy/lib/python3.11/site-packages/playwright/driver && \ + rm -f /lsiopy/lib/python3.11/site-packages/playwright/driver/node && \ ln -s /usr/bin/node /lsiopy/lib/python3.11/site-packages/playwright/driver/node && \ apk del --purge \ build-dependencies && \ diff --git a/Dockerfile.aarch64 b/Dockerfile.aarch64 index 645d0b8..ef41931 100644 --- a/Dockerfile.aarch64 +++ b/Dockerfile.aarch64 @@ -54,23 +54,7 @@ RUN \ git clone --depth 1 --branch "${PLAYWRIGHT_PY_RELEASE}" https://github.com/microsoft/playwright-python /tmp/playwright-python && \ cd /tmp/playwright-python && \ pip install -U --no-cache-dir . && \ - git clone --depth 1 --branch "${PLAYWRIGHT_PY_RELEASE}" https://github.com/microsoft/playwright /tmp/playwright && \ - cd /tmp/playwright && \ - npm ci && \ - npm run build && \ - # Don't build for other platforms - sed -i '/-darwin-x64/d' ./utils/build/build-playwright-driver.sh && \ - sed -i '/-darwin-arm64/d' ./utils/build/build-playwright-driver.sh && \ - sed -i '/-linux-x64/d' ./utils/build/build-playwright-driver.sh && \ - sed -i '/-win-x64/d' ./utils/build/build-playwright-driver.sh && \ - # Don't download a static node binary, use the OS install - sed -i '/curl ${NODE_URL}/d' ./utils/build/build-playwright-driver.sh && \ - sed -i '/elif \[\[ "${ARCHIVE}" == "tar.gz" \]\]; then/,/else/d' ./utils/build/build-playwright-driver.sh && \ - sed -i '/cp .\/output\/${NODE_DIR}\/LICENSE .\/output\/playwright-${SUFFIX}\//d' ./utils/build/build-playwright-driver.sh && \ - sed -i 's/"..\/..\/${NODE_DIR}\/${NPM_PATH}"/\/usr\/lib\/node_modules\/npm\/bin\/npm-cli.js/' ./utils/build/build-playwright-driver.sh && \ - ./utils/build/build-playwright-driver.sh && \ - rm -rf /lsiopy/lib/python3.11/site-packages/playwright/driver/* && \ - cp -R ./utils/build/output/playwright-linux-arm64/* /lsiopy/lib/python3.11/site-packages/playwright/driver && \ + rm -f /lsiopy/lib/python3.11/site-packages/playwright/driver/node && \ ln -s /usr/bin/node /lsiopy/lib/python3.11/site-packages/playwright/driver/node && \ apk del --purge \ build-dependencies && \ From 4429a5718de586d2a121b988f0accc673830a6d9 Mon Sep 17 00:00:00 2001 From: TheSpad Date: Fri, 15 Mar 2024 17:35:29 +0000 Subject: [PATCH 2/2] Remove npm as build dep --- Dockerfile | 1 - Dockerfile.aarch64 | 1 - 2 files changed, 2 deletions(-) diff --git a/Dockerfile b/Dockerfile index 8f06a7f..57561b3 100644 --- a/Dockerfile +++ b/Dockerfile @@ -19,7 +19,6 @@ RUN \ libc-dev \ libffi-dev \ libxslt-dev \ - npm \ openssl-dev \ python3-dev \ zip \ diff --git a/Dockerfile.aarch64 b/Dockerfile.aarch64 index ef41931..87964c6 100644 --- a/Dockerfile.aarch64 +++ b/Dockerfile.aarch64 @@ -19,7 +19,6 @@ RUN \ libc-dev \ libffi-dev \ libxslt-dev \ - npm \ openssl-dev \ python3-dev \ zip \