build/set-version.sh
author ymh <ymh.work@gmail.com>
Fri, 17 Nov 2017 11:41:58 +0100
changeset 562 210420362d64
parent 392 4fbe94af93e8
permissions -rwxr-xr-x
Added tag 0.0.24 for changeset bb2cb0fad904

#!/usr/bin/env bash

set -e

function usage() {
    cat <<EOF
Usage: $0 "x.y.z"
    "x.y.z": version number, following the semver convention
EOF
}

if [ $# -ne 1 ]; then
    echo "Bad number of parameters"
    usage >&2
    exit 1
fi

if [[ "$1" == "-h" || "$1" == "--help" ]]; then
    usage
    exit 0
fi

version=$1

echo "Version: ${version}"

[[ "${version}" =~ ^[[:digit:]]+\.[[:digit:]]+\.[[:digit:]]+$ ]] || {
    echo "Bad format for version."
    usage >&2
    exit 1
}

DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
green="\x1B[0;32m" # '\e[1;32m' is too bright for white bg.
blue="\x1B[1;34m"
endColor="\x1B[0m"

function echoblue() {
    echo -e "${blue}$1${endColor}"
}

pushd "$DIR"

pushd ../server/bo_client
echoblue "Setting bo_client version"
/usr/local/bin/npm run set-version -- "$version"
popd

pushd ../server/src
echoblue "Setting back version"
sed -i "" -e "s/\([:space:]*\'version\'[[:space:]]*\=\>[[:space:]]*\'\)[\.0-9]*\(\'.*\)/\1${version}\2/" config/version.php
popd

pushd ../cms
echoblue "Setting cms version"
/usr/local/bin/npm run set-version -- "$version"
popd

pushd ../cms/app-client
echoblue "Setting app-client version"
/usr/local/bin/npm run set-version -- "$version"
popd

pushd ../common/corpus-common-addon
echoblue "Setting corpus-common-addon version"
/usr/local/bin/npm run set-version -- "$version"
popd


echoblue "Version has been changed, please commit and push if necessary."


popd