mirror of
https://github.com/microsoft/playwright.git
synced 2024-12-15 14:11:50 +03:00
b1b6d3f531
Currently, it might happen that two different patches clash for the same build number for the browsers. In this case, authors might not even know that they need to rebaseline. This patch starts adding a second line to `BUILD_NUMBER` files - the signature and date of the `BUILD_NUMBER` change. These are guaranteed to clash, so it should not be possible to land patches without re-baselining them.
115 lines
2.4 KiB
Bash
Executable File
115 lines
2.4 KiB
Bash
Executable File
#!/bin/bash
|
|
set -e
|
|
set +x
|
|
|
|
if [[ ($1 == '--help') || ($1 == '-h') ]]; then
|
|
echo "usage: $(basename $0) [firefox|webkit] [--full-history] [--has-all-builds]"
|
|
echo
|
|
echo "List CDN status for browser"
|
|
echo
|
|
exit 0
|
|
fi
|
|
|
|
if [[ $# == 0 ]]; then
|
|
echo "missing browser: 'firefox' or 'webkit'"
|
|
echo "try './$(basename $0) --help' for more information"
|
|
exit 1
|
|
fi
|
|
|
|
trap "cd $(pwd -P)" EXIT
|
|
cd "$(dirname "$0")"
|
|
|
|
HOST="https://playwright2.blob.core.windows.net/builds"
|
|
|
|
FFOX_REVISION=$(head -1 ../firefox/BUILD_NUMBER)
|
|
FFOX_ARCHIVES=(
|
|
"$HOST/firefox/%s/firefox-mac.zip"
|
|
"$HOST/firefox/%s/firefox-linux.zip"
|
|
"$HOST/firefox/%s/firefox-win32.zip"
|
|
"$HOST/firefox/%s/firefox-win64.zip"
|
|
)
|
|
FFOX_ALIASES=(
|
|
"FF-MAC"
|
|
"FF-LINUX"
|
|
"FF-WIN32"
|
|
"FF-WIN64"
|
|
)
|
|
|
|
WK_REVISION=$(head -1 ../webkit/BUILD_NUMBER)
|
|
WK_ARCHIVES=(
|
|
"$HOST/webkit/%s/minibrowser-gtk.zip"
|
|
"$HOST/webkit/%s/minibrowser-wpe.zip"
|
|
"$HOST/webkit/%s/minibrowser-gtk-wpe.zip"
|
|
"$HOST/webkit/%s/minibrowser-mac-10.14.zip"
|
|
"$HOST/webkit/%s/minibrowser-mac-10.15.zip"
|
|
"$HOST/webkit/%s/minibrowser-win64.zip"
|
|
)
|
|
WK_ALIASES=(
|
|
"WK-GTK"
|
|
"WK-WPE"
|
|
"WK-GTK+WPE"
|
|
"WK-MAC-10.14"
|
|
"WK-MAC-10.15"
|
|
"WK-WIN64"
|
|
)
|
|
|
|
COLUMN="%-15s"
|
|
# COLORS
|
|
RED=$'\e[1;31m'
|
|
GRN=$'\e[1;32m'
|
|
YEL=$'\e[1;33m'
|
|
END=$'\e[0m'
|
|
|
|
REVISION=""
|
|
ARCHIVES=""
|
|
ALIASES=""
|
|
if [[ ("$1" == "firefox") || ("$1" == "firefox/") ]]; then
|
|
REVISION=$FFOX_REVISION
|
|
ARCHIVES=("${FFOX_ARCHIVES[@]}")
|
|
ALIASES=("${FFOX_ALIASES[@]}")
|
|
elif [[ ("$1" == "webkit") || ("$1" == "webkit/") ]]; then
|
|
REVISION=$WK_REVISION
|
|
ARCHIVES=("${WK_ARCHIVES[@]}")
|
|
ALIASES=("${WK_ALIASES[@]}")
|
|
else
|
|
echo ERROR: unknown browser - "$1"
|
|
exit 1
|
|
fi
|
|
|
|
if [[ $* == *--has-all-builds ]]; then
|
|
for i in "${ARCHIVES[@]}"; do
|
|
URL=$(printf $i $REVISION)
|
|
if ! [[ $(curl -s -L -I $URL | head -1 | cut -f2 -d' ') == 200 ]]; then
|
|
exit 1
|
|
fi
|
|
done;
|
|
exit 0
|
|
fi
|
|
|
|
STOP_REVISION=$((REVISION - 3))
|
|
if [[ $* == *--full-history* ]]; then
|
|
STOP_REVISION=0
|
|
fi
|
|
|
|
printf "%7s" ""
|
|
for i in "${ALIASES[@]}"; do
|
|
printf $COLUMN $i
|
|
done
|
|
printf "\n"
|
|
while (( REVISION > $STOP_REVISION )); do
|
|
printf "%-7s" ${REVISION}
|
|
for i in "${ARCHIVES[@]}"; do
|
|
URL=$(printf $i $REVISION)
|
|
if [[ $(curl -s -L -I $URL | head -1 | cut -f2 -d' ') == 200 ]]; then
|
|
printf ${GRN}$COLUMN${END} "YES"
|
|
else
|
|
printf ${RED}$COLUMN${END} "NO"
|
|
fi
|
|
done;
|
|
echo
|
|
REVISION=$((REVISION - 1 ))
|
|
if [[ $REVISION == "999" ]]; then
|
|
REVISION=2
|
|
fi
|
|
done;
|