42 lines
2.4 KiB
Bash
42 lines
2.4 KiB
Bash
|
#!/bin/bash
|
||
|
|
||
|
# shellcheck disable=SC2002 # disable useless-cat warning
|
||
|
|
||
|
set -o nounset # disallow usage of unset vars ( set -u )
|
||
|
set -o errexit # Exit immediately if a pipeline returns non-zero. ( set -e )
|
||
|
set -o errtrace # Allow the above trap be inherited by all functions in the script. ( set -E )
|
||
|
set -o pipefail # Return value of a pipeline is the value of the last (rightmost) command to exit with a non-zero status
|
||
|
IFS=$'\n\t' # Set $IFS to only newline and tab.
|
||
|
|
||
|
# shellcheck disable=SC2034
|
||
|
cr=$'\n'
|
||
|
|
||
|
function black() { if [ -t 1 ] && [ -n "$(tput colors)" ] && [ "$(tput colors)" -ge 8 ]; then echo -e "\\x1B[30m$1\\x1B[0m"; else echo "$1"; fi }
|
||
|
function red() { if [ -t 1 ] && [ -n "$(tput colors)" ] && [ "$(tput colors)" -ge 8 ]; then echo -e "\\x1B[31m$1\\x1B[0m"; else echo "$1"; fi; }
|
||
|
function green() { if [ -t 1 ] && [ -n "$(tput colors)" ] && [ "$(tput colors)" -ge 8 ]; then echo -e "\\x1B[32m$1\\x1B[0m"; else echo "$1"; fi; }
|
||
|
function yellow(){ if [ -t 1 ] && [ -n "$(tput colors)" ] && [ "$(tput colors)" -ge 8 ]; then echo -e "\\x1B[33m$1\\x1B[0m"; else echo "$1"; fi; }
|
||
|
function blue() { if [ -t 1 ] && [ -n "$(tput colors)" ] && [ "$(tput colors)" -ge 8 ]; then echo -e "\\x1B[34m$1\\x1B[0m"; else echo "$1"; fi; }
|
||
|
function purple(){ if [ -t 1 ] && [ -n "$(tput colors)" ] && [ "$(tput colors)" -ge 8 ]; then echo -e "\\x1B[35m$1\\x1B[0m"; else echo "$1"; fi; }
|
||
|
function cyan() { if [ -t 1 ] && [ -n "$(tput colors)" ] && [ "$(tput colors)" -ge 8 ]; then echo -e "\\x1B[36m$1\\x1B[0m"; else echo "$1"; fi; }
|
||
|
function white() { if [ -t 1 ] && [ -n "$(tput colors)" ] && [ "$(tput colors)" -ge 8 ]; then echo -e "\\x1B[37m$1\\x1B[0m"; else echo "$1"; fi; }
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
path_to_pubspec="$(dirname "$0")/../pubspec.yaml"
|
||
|
current_version=$(awk '/^version:/ {print $2}' $path_to_pubspec)
|
||
|
current_version_without_build=$(echo "$current_version" | sed 's/\+.*//')
|
||
|
|
||
|
gitcount="$(git log | grep "^commit" | wc -l | xargs)"
|
||
|
new_version="$current_version_without_build+$gitcount"
|
||
|
|
||
|
echo "Setting pubspec.yaml version $current_version to $new_version"
|
||
|
|
||
|
if [[ "$OSTYPE" == "darwin"* ]]; then
|
||
|
# macOS sed (requires a space after -i)
|
||
|
sed -i '' -e "s/version: $current_version/version: $new_version/g" $path_to_pubspec
|
||
|
else
|
||
|
# GNU sed (requires no space after -i)
|
||
|
sed -i'' -e "s/version: $current_version/version: $new_version/g" $path_to_pubspec
|
||
|
fi
|