Travis: setup up the desired release message right away

Instead of using the default release message and then trying to fix it up
in the after_success section of one of the builds that we test, let's just
always use the message that we want, regardless which build finishes first.

This currently requires my fork of the uploadtool - the changes have been
submitted upstream and I hope they'll get merged there so we can switch
back to the upstream version of uploadtool.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This commit is contained in:
Dirk Hohndel 2017-11-17 16:40:35 -08:00 committed by Lubomir I. Ivanov
parent cd9805904a
commit e643589233
5 changed files with 20 additions and 42 deletions

View file

@ -4,9 +4,12 @@ if [ ! -z $TRAVIS_BRANCH ] && [ "$TRAVIS_BRANCH" != "master" ] ; then
export UPLOADTOOL_SUFFIX=$TRAVIS_BRANCH
fi
# set up the release message to use
source ${TRAVIS_BUILD_DIR}/scripts/release-message.sh
echo "Submitting the folloing apk for continuous build release:"
ls -lh $TRAVIS_BUILD_DIR/apk/*.apk
# get and run the upload script
wget -c https://github.com/probonopd/uploadtool/raw/master/upload.sh
wget -c https://github.com/dirkhh/uploadtool/raw/master/upload.sh
bash ./upload.sh $TRAVIS_BUILD_DIR/apk/*.apk

View file

@ -4,10 +4,13 @@ if [ ! -z $TRAVIS_BRANCH ] && [ "$TRAVIS_BRANCH" != "master" ] ; then
export UPLOADTOOL_SUFFIX=$TRAVIS_BRANCH
fi
# set up the release message to use
source ${TRAVIS_BUILD_DIR}/scripts/release-message.sh
echo "Submitting the folloing AppImage for continuous build release:"
ls -lh Subsurface*.AppImage
# get and run the upload script
wget -c https://github.com/probonopd/uploadtool/raw/master/upload.sh
wget -c https://github.com/dirkhh/uploadtool/raw/master/upload.sh
bash ./upload.sh Subsurface*.AppImage Subsurface*.AppImage.zsync

View file

@ -4,10 +4,8 @@ if [ ! -z $TRAVIS_BRANCH ] && [ "$TRAVIS_BRANCH" != "master" ] ; then
export UPLOADTOOL_SUFFIX=$TRAVIS_BRANCH
fi
# same git version magic as in the Makefile
# for the naming of the app
export VERSION=$(cd ${TRAVIS_BUILD_DIR}; ./scripts/get-version linux)
# set up the release message to use
source ${TRAVIS_BUILD_DIR}/scripts/release-message.sh
cd ${TRAVIS_BUILD_DIR}/build
zip -r -y Subsurface-$VERSION.app.zip Subsurface.app
@ -16,6 +14,6 @@ echo "Submitting the folloing App for continuous build release:"
ls -lh Subsurface-$VERSION.app.zip
# get and run the upload script
wget -c https://github.com/probonopd/uploadtool/raw/master/upload.sh
wget -c https://github.com/dirkhh/uploadtool/raw/master/upload.sh
bash ./upload.sh Subsurface-$VERSION.app.zip

View file

@ -1,38 +1,11 @@
#!/bin/bash
# don't run this for pull requests
if [ "$TRAVIS_EVENT_TYPE" == "pull_request" ] ; then
exit 0;
fi
# create a more useful release message body
if [ ! -z $UPLOADTOOL_SUFFIX ] ; then
if [ "$UPLOADTOOL_SUFFIX" = "$TRAVIS_TAG" ] ; then
RELEASE_NAME=$TRAVIS_TAG
RELEASE_TITLE="Release build ($TRAVIS_TAG)"
is_prerelease="false"
else
RELEASE_NAME="continuous-$UPLOADTOOL_SUFFIX"
RELEASE_TITLE="Continuous build ($UPLOADTOOL_SUFFIX)"
is_prerelease="true"
fi
else
RELEASE_NAME="continuous" # Do not use "latest" as it is reserved by GitHub
RELEASE_TITLE="Continuous build"
is_prerelease="true"
fi
# update the Body of the Release to be more interesting
VERSION=$(cd ${TRAVIS_BUILD_DIR}; ./scripts/get-version linux)
export VERSION=$(cd ${TRAVIS_BUILD_DIR}; ./scripts/get-version linux)
T_BUILD_REF="Travis CI build log: https://travis-ci.org/Subsurface-divelog/subsurface/builds/$TRAVIS_BUILD_ID/\n\n"
WIN_BINS="subsurface.exe and subsurface.exe.debug are just the Subsurface executable for this build, the full Windows installer is subsurface-$VERSION.exe.\n\n"
MAC_ZIP="Subsurface-$VERSION.app.zip is a zip archive containing an unsigned app folder; you will have to override Mac security settings in order to be able to run this app.\n\n"
ANDROID_APK="The Android APK is not signed with the release key, most Android phones will force you to uninstall Subsurface-mobile before you can install this APK if you already have an official binary installed on your Android device.\n\n"
MISSING_BINARIES="While the continuous builds are running not all binaries may be posted here - please reload the page in a few minutes if the binary you are looking for is missing\n."
BODY=$T_BUILD_REF$WIN_BINS$MAC_ZIP$ANDROID_APK$MISSING_BINARIES
release_id=$(curl https://api.github.com/repos/Subsurface-divelog/subsurface/releases/tags/${RELEASE_NAME} | grep "\"id\":" | head -n 1 | tr -s " " | cut -f 3 -d" " | cut -f 1 -d ",")
release_infos=$(curl -H "Authorization: token ${GITHUB_TOKEN}" --request PATCH \
--data '{"tag_name": "'"$RELEASE_NAME"'","name": "'"$RELEASE_TITLE"'","body": "'"$BODY"'"}' "https://api.github.com/repos/Subsurface-divelog/subsurface/releases/${release_id}")
echo $release_infos
MISSING_BINARIES="While the continuous builds are running not all binaries may be posted here - please reload the page in a few minutes if the binary you are looking for is missing.\n"
export UPLOADTOOL_BODY=$T_BUILD_REF$WIN_BINS$MAC_ZIP$ANDROID_APK$MISSING_BINARIES

View file

@ -9,8 +9,9 @@ cd ${TRAVIS_BUILD_DIR}/../win32/subsurface
echo "Submitting the following Windows files for continuous build release:"
find . -name subsurface\*.exe*
# get and run the upload script
wget -c https://github.com/probonopd/uploadtool/raw/master/upload.sh
bash ./upload.sh subsurface*.exe*
# set up the release message to use
source ${TRAVIS_BUILD_DIR}/scripts/release-message.sh
bash -x ${TRAVIS_BUILD_DIR}/scripts/travis_end.sh
# get and run the upload script
wget -c https://github.com/dirkhh/uploadtool/raw/master/upload.sh
bash ./upload.sh subsurface*.exe*