From 91c7e39d507f5cda511f8e2217d6fff4396e28a2 Mon Sep 17 00:00:00 2001 From: SpiritCroc Date: Thu, 10 Sep 2020 11:11:57 +0200 Subject: [PATCH] Add increment_version.sh Change-Id: Id52547142003e34a68645655835b842cab19a869 --- increment_version.sh | 73 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 73 insertions(+) create mode 100755 increment_version.sh diff --git a/increment_version.sh b/increment_version.sh new file mode 100755 index 0000000000..c4b38a6275 --- /dev/null +++ b/increment_version.sh @@ -0,0 +1,73 @@ +#!/bin/bash + +set -e + +mydir="$(dirname "$(realpath "$0")")" + +source "$mydir/merge_helpers.sh" + +require_clean_git + + +pushd "$mydir" > /dev/null + +last_tag=`downstream_latest_tag` + +build_gradle="vector/build.gradle" + +get_prop() { + local prop="$1" + cat "$build_gradle" | grep "$prop = " | sed "s|$prop = ||" +} +set_prop() { + local prop="$1" + local value="$2" + if grep -q "$prop =" "$build_gradle"; then + local equals="= " + local not_equals="" + else + local equals="" + # Don't touch lines that have an equals in it, but not for this prop + local not_equals="/=/! " + fi + sed -i "$not_equals""s|\($prop $equals\).*|\1$value|g" "$build_gradle" +} + + +# +# Increase version +# + +versionMajor=`get_prop ext.versionMajor` +versionMinor=`get_prop ext.versionMinor` +versionPatch=`get_prop ext.versionPatch` +scVersion=`get_prop ext.scVersion` + +((scVersion++)) + +version="$versionMajor.$versionMinor.$versionPatch.sc.$scVersion" +versionCode=`echo "(($versionMajor * 10000 + $versionMinor * 100 + $versionPatch + $scVersion) + 4000000) * 10" | bc` +new_tag="sc_v$version" + +set_prop "ext.scVersion" "$scVersion" +set_prop "versionCode" "$versionCode" +set_prop "versionName" "\"$version\"" + + + +# +# Generate changelog +# + +changelog_dir=fastlane/metadata/android/en-US/changelogs +changelog_file="$changelog_dir/$versionCode.txt" +mkdir -p "$changelog_dir" +git log --reverse --pretty=format:"- %s" "$last_tag".. --committer="$(git config user.name)" > "$changelog_file" +$EDITOR "$changelog_file" || true +read -p "Press enter when changelog is done" + +git add -A +git commit -m "Increment version" +git tag "$new_tag" + +popd > /dev/null