diff -r a2342f26c9de -r b0b56e0f8c7f dev/provisioning/modules/puppi/files/scripts/deploy.sh --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/dev/provisioning/modules/puppi/files/scripts/deploy.sh Fri Jan 15 15:35:00 2016 +0100 @@ -0,0 +1,59 @@ +#!/bin/bash +# deploy.sh - Made for Puppi + +# Sources common header for Puppi scripts +. $(dirname $0)/header || exit 10 + +# Show help +showhelp () { + echo "This script deploys the files present in the \$predeploydir to the deploy destination dir" + echo "It has the following options:" + echo "\$1 (Required) - Destination directory where to deploy files" + echo "\$2 (Optional) - Name of the variable that identifies a specific predeploydir" + echo + echo "Examples:" + echo "deploy.sh /var/www/html/my_app" + echo "deploy.sh /var/www/html/my_app/conf config" +} + +# Check arguments +if [ $1 ] ; then + deploy_destdir=$1 +# This breaks on projects::maven when using more than one deploy destinations +# [ $deploy_root ] && deploy_destdir=$deploy_root +else + showhelp + exit 2 +fi + +# Obtain the value of the variable with name passed as second argument +# If no one is given, we take all the files in $predeploydir +if [ $2 ] ; then + deployfilevar=$2 + deploy_sourcedir="$(eval "echo \${$(echo ${deployfilevar})}")" + if [ "$deploy_sourcedir" = "" ] ; then + exit 0 + fi +else + deploy_sourcedir="$predeploydir" +fi + +# Copy files +deploy () { + case "$debug" in + yes) + rsync -rlptDv $deploy_sourcedir/ $deploy_destdir/ + check_retcode + ;; + full) + rsync -rlptDv $deploy_sourcedir/ $deploy_destdir/ + check_retcode + ;; + *) + rsync -rlptD $deploy_sourcedir/ $deploy_destdir/ + check_retcode + ;; + esac +} + +deploy