diff options
| author | Linus Färnstrand <linus@mullvad.net> | 2019-08-30 11:34:05 +0200 |
|---|---|---|
| committer | Linus Färnstrand <linus@mullvad.net> | 2019-08-30 12:11:23 +0200 |
| commit | 47f620104043849781920d0e63c404e8df30de4b (patch) | |
| tree | 087dc90a88f374c1ba3ec58735d8e2e777085600 | |
| parent | 46d191e4567f08839ae059edfe5e13125d4180c5 (diff) | |
| download | mullvadvpn-47f620104043849781920d0e63c404e8df30de4b.tar.xz mullvadvpn-47f620104043849781920d0e63c404e8df30de4b.zip | |
Compute and insert versionCode and versionName for Android
| -rwxr-xr-x | build.sh | 5 | ||||
| -rwxr-xr-x | prepare_release.sh | 21 |
2 files changed, 20 insertions, 6 deletions
@@ -91,10 +91,9 @@ if [[ "$BUILD_MODE" == "dev" ]]; then echo "compression: store" >> gui/electron-builder.yml fi -sed -i.bak \ - -Ee "s/\"version\": \"[^\"]+\",/\"version\": \"$SEMVER_VERSION\",/g" \ - gui/package.json cp gui/package-lock.json gui/package-lock.json.bak +sed -i.bak -Ee "s/\"version\": \"[^\"]+\",/\"version\": \"$SEMVER_VERSION\",/g" \ + gui/package.json cp Cargo.lock Cargo.lock.bak sed -i.bak \ diff --git a/prepare_release.sh b/prepare_release.sh index 8a628e15c5..3f4d6b8f25 100755 --- a/prepare_release.sh +++ b/prepare_release.sh @@ -12,11 +12,21 @@ if [[ "$#" != "1" ]]; then fi VERSION=$1 -if [[ $(echo $VERSION | egrep '^[0-9]{4}\.[0-9]+(-(beta|alpha)[0-9]+)?$') == "" ]]; then +# Regex that only matches valid Mullvad VPN versions. It also captures +# relevant values into capture groups, read out via BASH_REMATCH[x] +VERSION_REGEX="^20([0-9]{2})\.([0-9]+)(-beta([0-9]+))?$" +if [[ ! $VERSION =~ $VERSION_REGEX ]]; then echo "Invalid version format. Please specify version as:" - echo "<YEAR>.<NUMBER>[-(beta|alpha)<NUMBER>]" + echo "<YEAR>.<NUMBER>[-beta<NUMBER>]" exit 1 fi +VERSION_YEAR=$(printf "%02d" ${BASH_REMATCH[1]}) +VERSION_NUMBER=$(printf "%02d" ${BASH_REMATCH[2]}) +VERSION_PATCH="00" +VERSION_BETA=$(printf "%02d" ${BASH_REMATCH[4]:-99}) +ANDROID_VERSION_CODE=${VERSION_YEAR}${VERSION_NUMBER}${VERSION_PATCH}${VERSION_BETA} + +SEMVER_VERSION=$(echo $VERSION | sed -Ee 's/($|-.*)/.0\1/g') if [[ $(git diff --shortstat 2> /dev/null | tail -n1) != "" ]]; then echo "Dirty working directory! Will not accept that for an official release." @@ -30,7 +40,6 @@ if [[ $(grep $VERSION CHANGELOG.md) == "" ]]; then fi echo "Updating version in metadata files..." -SEMVER_VERSION=`echo $VERSION | sed -Ee 's/($|-.*)/.0\1/g'` sed -i.bak -Ee "s/\"version\": \"[^\"]+\",/\"version\": \"$SEMVER_VERSION\",/g" \ gui/package.json sed -i.bak -Ee "s/^version = \"[^\"]+\"\$/version = \"$SEMVER_VERSION\"/g" \ @@ -38,6 +47,12 @@ sed -i.bak -Ee "s/^version = \"[^\"]+\"\$/version = \"$SEMVER_VERSION\"/g" \ mullvad-cli/Cargo.toml \ mullvad-problem-report/Cargo.toml +sed -i.bak -Ee "s/versionCode [0-9]+/versionCode $ANDROID_VERSION_CODE/g" \ + android/build.gradle +sed -i.bak -Ee "s/versionName \"[^\"]+\"/versionName \"$VERSION\"/g" \ + android/build.gradle + + echo "Syncing Cargo.lock with new version numbers" source env.sh "" cargo build |
