playwright-java/scripts/download_driver_for_all_platforms.sh

64 lines
1.6 KiB
Bash
Executable File

#!/bin/bash
set -e
set +x
trap "cd $(pwd -P)" EXIT
cd "$(dirname $0)"
if [[ ($1 == '-h') || ($1 == '--help') ]]; then
echo ""
echo "This script for downloading playwright-cli binaries for all platforms."
echo "The downloaded files will be put into directory 'driver-bundle/src/main/resources/driver'."
echo ""
echo "Usage: scripts/download_driver_for_all_platforms.sh [option]"
echo ""
echo "Options:"
echo " -h, --help display help information"
echo " -f, --force delete existing drivers and download them again"
echo ""
exit 0
fi
CLI_VERSION=$(head -1 ./CLI_VERSION)
FILE_PREFIX=playwright-$CLI_VERSION
cd ../driver-bundle/src/main/resources
if [[ ($1 == '-f') || ($1 == '--force') ]]; then
echo "Deleting existing drivers from $(pwd)"
rm -rf driver
fi
mkdir -p driver
cd driver
for PLATFORM in mac mac-arm64 linux linux-arm64 win32_x64
do
FILE_NAME=$FILE_PREFIX-$PLATFORM.zip
if [[ -d $PLATFORM ]]; then
echo "Skipping driver download for $PLATFORM ($(pwd)/$PLATFORM already exists)"
continue
fi
mkdir $PLATFORM
cd $PLATFORM
echo "Downloading driver for $PLATFORM to $(pwd)"
URL=https://playwright.azureedge.net/builds/driver
if [[ "$CLI_VERSION" == *-alpha* || "$CLI_VERSION" == *-beta* || "$CLI_VERSION" == *-next* ]]; then
URL=$URL/next
fi
URL=$URL/$FILE_NAME
echo "Using url: $URL"
curl -O $URL
unzip $FILE_NAME -d .
rm $FILE_NAME
cd -
done
echo ""
echo "All drivers have been downloaded successfully, use '-f' or '--force' option to delete and download them again if you want."
echo "For more details, you can use '-h' or '--help' option, or read the CONTRIBUTING.md for reference."
echo ""