2021-12-21 14:16:51 +00:00
|
|
|
|
#!/bin/bash
|
|
|
|
|
|
|
|
|
|
set -e
|
|
|
|
|
|
|
|
|
|
if uname -s | grep -q Darwin; then
|
|
|
|
|
SED=gsed
|
|
|
|
|
else
|
|
|
|
|
SED=sed
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
NOW="$(date +'%B %d, %Y')"
|
|
|
|
|
RED="\033[1;31m"
|
|
|
|
|
GREEN="\033[0;32m"
|
|
|
|
|
YELLOW="\033[1;33m"
|
|
|
|
|
BLUE="\033[1;34m"
|
|
|
|
|
PURPLE="\033[1;35m"
|
|
|
|
|
CYAN="\033[1;36m"
|
|
|
|
|
WHITE="\033[1;37m"
|
|
|
|
|
RESET="\033[0m"
|
|
|
|
|
|
|
|
|
|
QUESTION_FLAG="${GREEN}?"
|
|
|
|
|
WARNING_FLAG="${YELLOW}!"
|
|
|
|
|
NOTICE_FLAG="${CYAN}❯"
|
|
|
|
|
|
|
|
|
|
LATEST_HASH=`git log --pretty=format:'%h' -n 1`
|
|
|
|
|
|
|
|
|
|
BASE_VERSION=$(cat resources/package.json | jq '.version' | tr -d '"')
|
2022-01-21 01:31:50 +00:00
|
|
|
|
VERSION_CODE=$(cat android/app/build.gradle | grep -oh 'versionCode [[:digit:]]*' | awk '{print $2}')
|
2021-12-21 14:16:51 +00:00
|
|
|
|
|
|
|
|
|
BASE_LIST=(`echo $BASE_VERSION | tr '.' ' '`)
|
|
|
|
|
V_MAJOR=${BASE_LIST[0]}
|
|
|
|
|
V_MINOR=${BASE_LIST[1]}
|
|
|
|
|
V_PATCH=${BASE_LIST[2]}
|
|
|
|
|
|
|
|
|
|
echo -e "${NOTICE_FLAG} Current version: ${WHITE}$BASE_VERSION"
|
|
|
|
|
echo -e "${NOTICE_FLAG} Latest commit hash: ${WHITE}$LATEST_HASH"
|
2023-07-01 17:30:59 +00:00
|
|
|
|
echo -e "${NOTICE_FLAG} Current versionCode(Android) / buildVersion(MacOS): ${WHITE}$VERSION_CODE"
|
2021-12-21 14:16:51 +00:00
|
|
|
|
|
|
|
|
|
# V_MINOR=$((V_MINOR + 1))
|
|
|
|
|
# V_PATCH=0
|
|
|
|
|
V_PATCH=$((V_PATCH + 1))
|
|
|
|
|
|
|
|
|
|
SUGGESTED_VERSION="$V_MAJOR.$V_MINOR.$V_PATCH"
|
|
|
|
|
|
|
|
|
|
echo -e "${QUESTION_FLAG} ${CYAN}Enter a version number [${WHITE}$SUGGESTED_VERSION${CYAN}]: "
|
|
|
|
|
read INPUT_STRING
|
|
|
|
|
if [ "$INPUT_STRING" = "" ]; then
|
|
|
|
|
INPUT_STRING=$SUGGESTED_VERSION
|
|
|
|
|
fi
|
2022-01-21 01:31:50 +00:00
|
|
|
|
NEW_VERSION_CODE=$(($VERSION_CODE + 1))
|
2021-12-21 14:16:51 +00:00
|
|
|
|
|
|
|
|
|
echo -e "${NOTICE_FLAG} Will set new version to be ${WHITE}$INPUT_STRING"
|
2023-07-01 17:30:59 +00:00
|
|
|
|
echo -e "${NOTICE_FLAG} Will set new versionCode to be ${WHITE}$NEW_VERSION_CODE"
|
2021-12-21 14:16:51 +00:00
|
|
|
|
|
|
|
|
|
NEW_VERSION=$INPUT_STRING
|
|
|
|
|
|
|
|
|
|
$SED -i 's/defonce version ".*"/defonce version "'${NEW_VERSION}'"/g' src/main/frontend/version.cljs
|
|
|
|
|
$SED -i 's/"version": ".*"/"version": "'${NEW_VERSION}'"/g' resources/package.json
|
|
|
|
|
$SED -i 's/versionName ".*"/versionName "'${NEW_VERSION}'"/g' android/app/build.gradle
|
2022-01-21 01:31:50 +00:00
|
|
|
|
$SED -i 's/versionCode .*/versionCode '${NEW_VERSION_CODE}'/g' android/app/build.gradle
|
2023-07-01 17:30:59 +00:00
|
|
|
|
$SED -i 's/buildVersion: .*/buildVersion: '${NEW_VERSION_CODE}',/g' resources/forge.config.js
|
2022-05-31 08:45:03 +00:00
|
|
|
|
$SED -i 's/MARKETING_VERSION = .*;/MARKETING_VERSION = '${NEW_VERSION}';/g' ios/App/App.xcodeproj/project.pbxproj
|
2021-12-21 14:16:51 +00:00
|
|
|
|
|
|
|
|
|
git --no-pager diff -U0
|
|
|
|
|
|
|
|
|
|
echo -e "${NOTICE_FLAG} Finished."
|