release.sh: fix bugs discovered during last release
This commit is contained in:
@@ -46,6 +46,7 @@ echo "Applying extracted signatures to unsigned app..."
|
|||||||
QUIET="1" "$CONTRIB_OSX/apply_sigs.sh" "$DMG_UNSIGNED_UNPACKED"/Electrum.app mac_extracted_sigs.tar.gz
|
QUIET="1" "$CONTRIB_OSX/apply_sigs.sh" "$DMG_UNSIGNED_UNPACKED"/Electrum.app mac_extracted_sigs.tar.gz
|
||||||
|
|
||||||
rm mac_extracted_sigs.tar.gz
|
rm mac_extracted_sigs.tar.gz
|
||||||
|
rm -rf "$DMG_UNSIGNED_UNPACKED"
|
||||||
|
|
||||||
diff=$(diff -qr "$WORKSPACE/signed_app" "$DMG_RELEASE_UNPACKED") || diff="diff errored"
|
diff=$(diff -qr "$WORKSPACE/signed_app" "$DMG_RELEASE_UNPACKED") || diff="diff errored"
|
||||||
echo $diff
|
echo $diff
|
||||||
|
|||||||
@@ -48,7 +48,7 @@ fi
|
|||||||
|
|
||||||
GPGUSER=$1
|
GPGUSER=$1
|
||||||
if [ -z "$GPGUSER" ]; then
|
if [ -z "$GPGUSER" ]; then
|
||||||
fail "usage: release.sh gpg_username"
|
fail "usage: $0 gpg_username"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
export SSHUSER="$GPGUSER"
|
export SSHUSER="$GPGUSER"
|
||||||
@@ -106,17 +106,21 @@ if test -f "dist/$win1"; then
|
|||||||
else
|
else
|
||||||
pushd .
|
pushd .
|
||||||
./contrib/build-wine/build.sh
|
./contrib/build-wine/build.sh
|
||||||
|
cd contrib/build-wine/
|
||||||
if [ ! -z "$RELEASEMANAGER" ] ; then
|
if [ ! -z "$RELEASEMANAGER" ] ; then
|
||||||
cd contrib/build-wine/
|
|
||||||
./sign.sh
|
./sign.sh
|
||||||
cp ./signed/*.exe "$PROJECT_ROOT/dist/"
|
cp ./signed/*.exe "$PROJECT_ROOT/dist/"
|
||||||
|
else
|
||||||
|
cp ./dist/*.exe "$PROJECT_ROOT/dist/"
|
||||||
fi
|
fi
|
||||||
popd
|
popd
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# android
|
# android
|
||||||
apk1="Electrum-$VERSION.0-armeabi-v7a-release.apk"
|
apk1="Electrum-$VERSION.0-armeabi-v7a-release.apk"
|
||||||
|
apk1_unsigned="Electrum-$VERSION.0-armeabi-v7a-release-unsigned.apk"
|
||||||
apk2="Electrum-$VERSION.0-arm64-v8a-release.apk"
|
apk2="Electrum-$VERSION.0-arm64-v8a-release.apk"
|
||||||
|
apk2_unsigned="Electrum-$VERSION.0-arm64-v8a-release-unsigned.apk"
|
||||||
if test -f "dist/$apk1"; then
|
if test -f "dist/$apk1"; then
|
||||||
info "file exists: $apk1"
|
info "file exists: $apk1"
|
||||||
else
|
else
|
||||||
@@ -124,12 +128,21 @@ else
|
|||||||
./contrib/android/build.sh release
|
./contrib/android/build.sh release
|
||||||
else
|
else
|
||||||
./contrib/android/build.sh release-unsigned
|
./contrib/android/build.sh release-unsigned
|
||||||
|
mv "$apk1_unsigned" "$apk1"
|
||||||
|
mv "$apk2_unsigned" "$apk2"
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# the macos binary is built on a separate machine.
|
# the macos binary is built on a separate machine.
|
||||||
|
# the file that needs to be copied over is the codesigned release binary (regardless of builder role)
|
||||||
dmg=electrum-$VERSION.dmg
|
dmg=electrum-$VERSION.dmg
|
||||||
test -f "dist/$dmg" || fail "dmg is missing, aborting. Please build the dmg on a mac and copy it over."
|
if ! test -f "dist/$dmg"; then
|
||||||
|
if [ ! -z "$RELEASEMANAGER" ] ; then # RM
|
||||||
|
fail "dmg is missing, aborting. Please build and codesign the dmg on a mac and copy it over."
|
||||||
|
else # other builders
|
||||||
|
fail "dmg is missing, aborting. Please build the unsigned dmg on a mac, compare it with file built by RM, and if matches, copy RM's dmg."
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
# now that we have all binaries, if we are the RM, sign them.
|
# now that we have all binaries, if we are the RM, sign them.
|
||||||
if [ ! -z "$RELEASEMANAGER" ] ; then
|
if [ ! -z "$RELEASEMANAGER" ] ; then
|
||||||
@@ -188,12 +201,12 @@ if [ -z "$RELEASEMANAGER" ] ; then
|
|||||||
# compare downloaded binaries against ones we built
|
# compare downloaded binaries against ones we built
|
||||||
cmp --silent "$tarball" "$PROJECT_ROOT/dist/$tarball" || fail "files are different. tarball."
|
cmp --silent "$tarball" "$PROJECT_ROOT/dist/$tarball" || fail "files are different. tarball."
|
||||||
cmp --silent "$appimage" "$PROJECT_ROOT/dist/$appimage" || fail "files are different. appimage."
|
cmp --silent "$appimage" "$PROJECT_ROOT/dist/$appimage" || fail "files are different. appimage."
|
||||||
mkdir --parents "$CONTRIB/build-wine/signed/"
|
rm -rf "$CONTRIB/build-wine/signed/" && mkdir --parents "$CONTRIB/build-wine/signed/"
|
||||||
cp -f "$win1" "$win2" "$win3" "$CONTRIB/build-wine/signed/"
|
cp -f "$win1" "$win2" "$win3" "$CONTRIB/build-wine/signed/"
|
||||||
"$CONTRIB/build-wine/unsign.sh" || fail "files are different. windows."
|
"$CONTRIB/build-wine/unsign.sh" || fail "files are different. windows."
|
||||||
"$CONTRIB/android/apkdiff.py" "$apk1" "$PROJECT_ROOT/dist/$apk1" || fail "files are different. android."
|
"$CONTRIB/android/apkdiff.py" "$apk1" "$PROJECT_ROOT/dist/$apk1" || fail "files are different. android."
|
||||||
"$CONTRIB/android/apkdiff.py" "$apk2" "$PROJECT_ROOT/dist/$apk2" || fail "files are different. android."
|
"$CONTRIB/android/apkdiff.py" "$apk2" "$PROJECT_ROOT/dist/$apk2" || fail "files are different. android."
|
||||||
"$CONTRIB/osx/compare_dmg" "$PROJECT_ROOT/dist/$dmg" "$dmg" || fail "files are different. macos."
|
cmp --silent "$dmg" "$PROJECT_ROOT/dist/$dmg" || fail "files are different. macos."
|
||||||
# all files matched. sign them.
|
# all files matched. sign them.
|
||||||
rm -rf "$PROJECT_ROOT/dist/sigs/"
|
rm -rf "$PROJECT_ROOT/dist/sigs/"
|
||||||
mkdir --parents "$PROJECT_ROOT/dist/sigs/"
|
mkdir --parents "$PROJECT_ROOT/dist/sigs/"
|
||||||
@@ -213,7 +226,7 @@ else
|
|||||||
./contrib/make_download $WWW_DIR
|
./contrib/make_download $WWW_DIR
|
||||||
info "signing the version announcement file"
|
info "signing the version announcement file"
|
||||||
sig=`./run_electrum -o signmessage $ELECTRUM_SIGNING_ADDRESS $VERSION -w $ELECTRUM_SIGNING_WALLET`
|
sig=`./run_electrum -o signmessage $ELECTRUM_SIGNING_ADDRESS $VERSION -w $ELECTRUM_SIGNING_WALLET`
|
||||||
info "{ \"version\":\"$VERSION\", \"signatures\":{ \"$ELECTRUM_SIGNING_ADDRESS\":\"$sig\"}}" > $WWW_DIR/version
|
echo "{ \"version\":\"$VERSION\", \"signatures\":{ \"$ELECTRUM_SIGNING_ADDRESS\":\"$sig\"}}" > $WWW_DIR/version
|
||||||
|
|
||||||
|
|
||||||
if [ $REV != $VERSION ]; then
|
if [ $REV != $VERSION ]; then
|
||||||
|
|||||||
Reference in New Issue
Block a user