1
0
Fork 0
mirror of https://github.com/syncthing/syncthing-android.git synced 2024-11-30 00:01:19 +00:00
syncthing-android/prepare-release.bash

102 lines
2.7 KiB
Bash
Raw Normal View History

2016-09-13 20:43:25 +00:00
#!/bin/bash
set -e
NEW_VERSION_NAME=$1
LATEST_TAG=$2
OLD_VERSION_NAME=$(grep "versionName" "app/build.gradle" | awk '{print $2}')
2017-10-11 03:55:12 +00:00
if [[ -z ${NEW_VERSION_NAME} ]]
2016-09-13 20:43:25 +00:00
then
echo "New version name is empty. Please set a new version. Current version: $OLD_VERSION_NAME"
exit
fi
echo "
Checking for Syncthing Update
-----------------------------
"
PROJECT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
cd "syncthing/src/github.com/syncthing/syncthing/"
2016-09-13 20:43:25 +00:00
git fetch
CURRENT_TAG=$(git describe)
if [ -z "$LATEST_TAG" ]; then
# Also consider Syncthing rc releases if we are building beta or rc.
if [[ "$NEW_VERSION_NAME" == *beta* ]] || [[ "$NEW_VERSION_NAME" == *rc* ]]; then
LATEST_TAG=$(git tag --sort=taggerdate | tail -1)
else
LATEST_TAG=$(git tag --sort=taggerdate | awk '!/rc/' | tail -1)
fi
fi
if [ ${CURRENT_TAG} != ${LATEST_TAG} ]; then
2017-10-11 03:55:12 +00:00
git checkout -f ${LATEST_TAG}
cd ${PROJECT_DIR}
git add "syncthing/src/github.com/syncthing/syncthing/"
2016-09-13 20:43:25 +00:00
git commit -m "Updated Syncthing to $LATEST_TAG"
./gradlew cleanNative buildNative
fi
2017-10-11 03:55:12 +00:00
cd ${PROJECT_DIR}
2016-09-13 20:43:25 +00:00
echo "
Updating Translations
-----------------------------
"
tx push -s
# Force push/pull to make sure this is executed. Apparently tx only compares timestamps, not file
# contents. So if a file was `touch`ed, it won't be updated by default.
2017-10-26 04:07:14 +00:00
# Use multiple transifex instances for pulling to speed things up.
tx pull -a -f -r "syncthing-android.stringsxml" &
tx pull -a -f -r "syncthing-android.description_fulltxt" &
tx pull -a -f -r "syncthing-android.description_shorttxt" &
tx pull -a -f -r "syncthing-android.titletxt" &
wait
2016-12-16 09:46:34 +00:00
./gradlew deleteUnsupportedPlayTranslations
git add -A "app/src/main/play/"
git add -A "app/src/main/res/values-*/strings.xml"
2016-09-13 20:43:25 +00:00
if ! git diff --cached --exit-code;
then
git commit -m "Imported translations"
fi
echo "
2017-10-11 03:55:12 +00:00
Running Lint
2016-09-13 20:43:25 +00:00
-----------------------------
"
2017-10-11 03:55:12 +00:00
./gradlew clean lintVitalRelease
echo "
Enter Changelog for $NEW_VERSION_NAME
-----------------------------
"
changelog_file="build/changelog.tmp"
touch ${changelog_file}
nano ${changelog_file}
cat ${changelog_file}
mv ${changelog_file} "app/src/main/play/en-GB/whatsnew"
2016-09-13 20:43:25 +00:00
echo "
Updating Version
-----------------------------
"
OLD_VERSION_CODE=$(grep "versionCode" "app/build.gradle" -m 1 | awk '{print $2}')
2016-09-13 20:43:25 +00:00
NEW_VERSION_CODE=$(($OLD_VERSION_CODE + 1))
sed -i "s/versionCode $OLD_VERSION_CODE/versionCode $NEW_VERSION_CODE/" "app/build.gradle"
2016-09-13 20:43:25 +00:00
OLD_VERSION_NAME=$(grep "versionName" "app/build.gradle" | awk '{print $2}')
2017-10-24 12:43:18 +00:00
sed -i "s/$OLD_VERSION_NAME/\"$1\"/" "app/build.gradle"
git add "app/build.gradle" "app/src/main/play/en-GB/whatsnew"
2016-09-13 20:43:25 +00:00
git commit -m "Bumped version to $NEW_VERSION_NAME"
2017-10-11 03:55:12 +00:00
git tag ${NEW_VERSION_NAME}
2016-09-13 20:43:25 +00:00
echo "
2016-12-23 09:03:14 +00:00
Update ready.
2016-09-13 20:43:25 +00:00
"