77 lines
2.3 KiB
Bash
Executable file
77 lines
2.3 KiB
Bash
Executable file
#!/bin/bash
|
|
|
|
cd "$(dirname "$0")"
|
|
source ./config.sh
|
|
PKGDIR=../pkg
|
|
if [ $# -ne 1 ] ; then
|
|
echo "Usage: $0 <version to release>"
|
|
exit 1
|
|
fi
|
|
TARGET=$1
|
|
if ! git show release-"$TARGET" > /dev/null 2> /dev/null ; then
|
|
echo "$TARGET is not a valid git target"
|
|
exit 1
|
|
fi
|
|
PKG="$PKGDIR"/privacy-badger-eff-$TARGET.xpi
|
|
ALT="$PKGDIR"/privacy-badger-eff-latest.xpi
|
|
|
|
echo Copying .xpi files...
|
|
scp "$PKG" "$USER@$SERVER:/www/eff.org/files" || exit 1
|
|
scp "$ALT" "$USER@$SERVER:/www/eff.org/files" || exit 1
|
|
echo Copying detached signature
|
|
scp "$PKG".sig "$USER@$SERVER:/www/eff.org/files" || exit 1
|
|
echo Copying Changelog.txt
|
|
git show release-"$TARGET":doc/Changelog > /tmp/pbchangelog$$ || exit 1
|
|
scp /tmp/pbchangelog$$ "$USER@$SERVER:/www/eff.org/files/pbChangelog.txt" || exit 1
|
|
rm -f /tmp/changelog$$
|
|
|
|
MSG=/tmp/email$$
|
|
|
|
echo "Privacy Badger $TARGET has been released for all supported browsers." > $MSG
|
|
echo "As always, you can get it from https://privacybadger.org/ or from your browser's add-on gallery." >> $MSG
|
|
echo "" >> $MSG
|
|
echo "Notable updates:" >> $MSG
|
|
echo "" >> $MSG
|
|
tail -n+5 ../doc/Changelog | sed '/^$/q' >> $MSG
|
|
echo "For further details, consult our release notes on GitHub:" >> $MSG
|
|
echo "https://github.com/EFForg/privacybadger/releases/tag/release-$TARGET" >> $MSG
|
|
|
|
echo To send email to the mailing list...
|
|
echo mutt -s "Privacy\ Badger\ version\ $TARGET\ released" privacybadger@eff.org '<' $MSG
|
|
echo "Now please edit https://www.eff.org/files/privacy-badger-updates.json to include the following"
|
|
echo ""
|
|
echo "{"
|
|
echo " \"version\": \"$TARGET\","
|
|
echo " \"update_link\": \"https://eff.org/files/privacy-badger-eff-$TARGET.xpi\","
|
|
echo " \"update_hash\": \"sha256:$(sha256sum "$PKG" | cut -c 1-64)\","
|
|
echo " \"applications\": {"
|
|
echo " \"gecko\": { \"strict_min_version\": \"52.0\" }"
|
|
echo " }"
|
|
echo "}"
|
|
|
|
echo ""
|
|
echo "AMO release notes:"
|
|
echo ""
|
|
echo "<ul>"
|
|
tail -n+5 ../doc/Changelog | sed '/^$/q' | {
|
|
out=""
|
|
while IFS= read -r line; do
|
|
# changelog entries start with "*"
|
|
if [ "${line:0:1}" = "*" ]; then
|
|
# this is the first entry
|
|
if [ -z "$out" ]; then
|
|
out="<li>${line:2}"
|
|
else
|
|
out="$out</li>\n<li>${line:2}"
|
|
fi
|
|
# changelog entry continues
|
|
else
|
|
if [ -n "$line" ]; then
|
|
out="$out $line"
|
|
fi
|
|
fi
|
|
done
|
|
echo -e "$out</li>"
|
|
}
|
|
echo "</ul>"
|
|
echo ""
|