BASH
16
update sh
Guest on 13th May 2022 01:51:36 AM
#!/bin/bash
ARGS=$(getopt -o cbh --long composer,build -- "$@")
COMPOSER=0
BUILD=0
usage() {
echo "Usage: update.sh [-c|--composer] [-b|--build] [-h|--help] -- <folder> <git_tag>"
exit 2;
}
eval set -- $ARGS
while :
do
case $1 in
-c | --composer) COMPOSER=1 ; shift ;;
-b | --build) BUILD=1 ; shift ;;
-h | --help) usage ;;
--) shift; break ;;
*) echo "Unexpected option: $1"; usage ;;
esac
done
[[ ! ${#@} -eq 2 ]] && usage ;
FOLDER=$1
GITTAG=$2
DIR=/var/www/$FOLDER
[[ ! -d $DIR ]] && echo "No such directory $FOLDER exist." && exit 2;
echo -e "FOLDER=${FOLDER}\nCOMPOSER=${COMPOSER}\nBUILD=${BUILD}"
cd $DIR
git fetch --tags
git checkout $GITTAG
[[ $COMPOSER -eq 1 ]] && docker run --rm --name=php -v $DIR:/code jayscgi/php:7.4 composer install
[[ $BUILD -eq 1 ]] && build-vue