mirror of
https://github.com/syncthing/release-tools.git
synced 2026-06-07 09:07:31 +00:00
Updated upload script
This commit is contained in:
@@ -1,78 +0,0 @@
|
||||
#!/bin/bash
|
||||
set -euo pipefail
|
||||
#set -x
|
||||
|
||||
export TMPDIR=/var/tmp
|
||||
workdir=$(mktemp -d)
|
||||
echo Working dir is "$workdir"
|
||||
pushd "$workdir"
|
||||
|
||||
cp "$1"/*.tar.gz "$1"/*.zip .
|
||||
ver=(syncthing-linux-amd64-*.tar.gz)
|
||||
ver="${ver#syncthing-linux-amd64-}"
|
||||
ver="${ver%.tar.gz}"
|
||||
echo Release version $ver
|
||||
|
||||
sign() {
|
||||
f="$1"
|
||||
base="$2"
|
||||
exe="$base/syncthing"
|
||||
metadir=".metadata"
|
||||
if [ -f "$base/syncthing.exe" ] ; then
|
||||
exe="$base/syncthing.exe"
|
||||
metadir="metadata"
|
||||
fi
|
||||
if [ -f "$exe" ] ; then
|
||||
echo Signing "$base ($f)"
|
||||
rm -rf "$base/$metadir"
|
||||
mkdir -p "$base/$metadir"
|
||||
( echo "$f"; cat "$exe" ) | stsigtool sign "$PRIVATE_KEY" > "$base/$metadir/release.sig"
|
||||
fi
|
||||
}
|
||||
|
||||
for f in *.tar.gz; do
|
||||
echo "$f"
|
||||
case "$f" in
|
||||
syncthing-source-*.tar.gz)
|
||||
;;
|
||||
*)
|
||||
base="${f%.tar.gz}"
|
||||
tar zxf "$f"
|
||||
sign "$f" "$base"
|
||||
rm -f "$f"
|
||||
tar zcf "$f" "$base"
|
||||
rm -rf "$base"
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
for f in *.zip; do
|
||||
base="${f%.zip}"
|
||||
unzip -q "$f"
|
||||
sign "$f" "$base"
|
||||
rm -f "$f"
|
||||
zip -q -r "$f" "$base"
|
||||
rm -rf "$base"
|
||||
done
|
||||
|
||||
files=(*.tar.gz *.zip)
|
||||
|
||||
sha1sum "${files[@]}" | gpg --clearsign >sha1sum.txt.asc
|
||||
sha256sum "${files[@]}" | gpg --clearsign >sha256sum.txt.asc
|
||||
gpg --sign --armour --detach syncthing-source-*.tar.gz
|
||||
|
||||
for f in *.asc "${files[@]}" ; do
|
||||
relup syncthing/syncthing "$ver" "$f"
|
||||
done
|
||||
|
||||
|
||||
echo
|
||||
echo If everything went well, hit enter to delete temporary files.
|
||||
echo If there were upload errors, hit ^C, go to "$workdir"
|
||||
echo "and retry upload by \"relup syncthing/syncthing "$ver" <filename>\"."
|
||||
echo It may be necessary to manually delete the broken upload from Github.
|
||||
read
|
||||
|
||||
popd
|
||||
rm -rf "$workdir"
|
||||
|
||||
Executable
+14
@@ -0,0 +1,14 @@
|
||||
#!/bin/bash
|
||||
set -euo pipefail
|
||||
|
||||
pushd "$1"
|
||||
|
||||
ver=(syncthing-linux-amd64-*.tar.gz)
|
||||
ver="${ver#syncthing-linux-amd64-}"
|
||||
ver="${ver%.tar.gz}"
|
||||
echo Release version $ver
|
||||
|
||||
echo *.asc *.tar.gz *.zip | xargs -n1 -P4 relup syncthing/syncthing "$ver"
|
||||
|
||||
popd
|
||||
|
||||
Reference in New Issue
Block a user