22
33set -e
44
5- : ${INPUT_WPE_SSHG_KEY_PRIVATE?Required secret not set.}
5+ : " ${INPUT_WPE_SSHG_KEY_PRIVATE?Required secret not set.} "
66
77# Alias logic for ENV names
88if [[ -n ${INPUT_WPE_ENV} ]]; then
@@ -30,7 +30,7 @@ WPE_DESTINATION=wpe_gha+"$WPE_SSH_USER":sites/"$WPE_ENV_NAME"/"$DIR_PATH"
3030
3131
3232# Setup our SSH Connection & use keys
33- if [ ! -d ${HOME} /.ssh ]; then
33+ if [ ! -d " ${HOME} " /.ssh ]; then
3434 mkdir " ${HOME} /.ssh"
3535 SSH_PATH=" ${HOME} /.ssh"
3636 mkdir " ${SSH_PATH} /ctl/"
@@ -52,15 +52,15 @@ ssh-keyscan -t rsa "$WPE_SSH_HOST" >> "$KNOWN_HOSTS_PATH"
5252chmod 644 " $KNOWN_HOSTS_PATH "
5353
5454echo " prepping file perms..."
55- find $SRC_PATH -type d -exec chmod -R 775 {} \;
56- find $SRC_PATH -type f -exec chmod -R 664 {} \;
55+ find " $SRC_PATH " -type d -exec chmod -R 775 {} \;
56+ find " $SRC_PATH " -type f -exec chmod -R 664 {} \;
5757echo " file perms set..."
5858
5959# pre deploy php lint
6060if [ " ${INPUT_PHP_LINT^^} " == " TRUE" ]; then
6161 echo " Begin PHP Linting."
62- for file in $( find $SRC_PATH / -name " *.php" ) ; do
63- php -l $file
62+ find " $SRC_PATH " / -name " *.php" -type f -print0 | while IFS= read -r -d ' ' file ; do
63+ php -l " $file "
6464 status=$?
6565 if [[ $status -ne 0 ]]; then
6666 echo " FAILURE: Linting failed - $file :: $status " && exit 1
8888
8989# Deploy via SSH
9090# setup master ssh connection
91- ssh -nNf -v -i ${WPE_SSHG_KEY_PRIVATE_PATH} -o StrictHostKeyChecking=no -o ControlMaster=yes -o ControlPath=" $SSH_PATH /ctl/%C" $WPE_FULL_HOST
91+ ssh -nNf -v -i " ${WPE_SSHG_KEY_PRIVATE_PATH} " -o StrictHostKeyChecking=no -o ControlMaster=yes -o ControlPath=" $SSH_PATH /ctl/%C" " $WPE_FULL_HOST "
9292
9393echo " !!! MASTER SSH CONNECTION ESTABLISHED !!!"
9494# rsync
95- rsync --rsh=" ssh -v -p 22 -i ${WPE_SSHG_KEY_PRIVATE_PATH} -o StrictHostKeyChecking=no -o 'ControlPath=$SSH_PATH /ctl/%C'" $INPUT_FLAGS --exclude-from=' /exclude.txt' $SRC_PATH " $WPE_DESTINATION "
95+ rsync --rsh=" ssh -v -p 22 -i ${WPE_SSHG_KEY_PRIVATE_PATH} -o StrictHostKeyChecking=no -o 'ControlPath=$SSH_PATH /ctl/%C'" $INPUT_FLAGS --exclude-from=' /exclude.txt' " $SRC_PATH " " $WPE_DESTINATION "
9696
9797# post deploy script and cache clear
9898if [[ -n ${SCRIPT} || -n ${CACHE_CLEAR} ]]; then
9999
100100 if [[ -n ${SCRIPT} ]]; then
101- if ! ssh -v -p 22 -i ${WPE_SSHG_KEY_PRIVATE_PATH} -o StrictHostKeyChecking=no -o ControlPath=" $SSH_PATH /ctl/%C" $WPE_FULL_HOST " test -s sites/${WPE_ENV_NAME} /${INPUT_SCRIPT} " ; then
101+ if ! ssh -v -p 22 -i " ${WPE_SSHG_KEY_PRIVATE_PATH} " -o StrictHostKeyChecking=no -o ControlPath=" $SSH_PATH /ctl/%C" " $WPE_FULL_HOST " " test -s sites/${WPE_ENV_NAME} /${INPUT_SCRIPT} " ; then
102102 status=1
103103 fi
104104
105105 if [[ $status -ne 0 && -f ${INPUT_SCRIPT} ]]; then
106- ssh -v -p 22 -i ${WPE_SSHG_KEY_PRIVATE_PATH} -o StrictHostKeyChecking=no -o ControlPath=" $SSH_PATH /ctl/%C" $WPE_FULL_HOST " mkdir -p sites/${WPE_ENV_NAME} /$( dirname ${INPUT_SCRIPT} ) "
106+ ssh -v -p 22 -i " ${WPE_SSHG_KEY_PRIVATE_PATH} " -o StrictHostKeyChecking=no -o ControlPath=" $SSH_PATH /ctl/%C" " $WPE_FULL_HOST " " mkdir -p sites/${WPE_ENV_NAME} /$( dirname " ${INPUT_SCRIPT} " ) "
107107
108- rsync --rsh=" ssh -v -p 22 -i ${WPE_SSHG_KEY_PRIVATE_PATH} -o StrictHostKeyChecking=no -o 'ControlPath=$SSH_PATH /ctl/%C'" ${INPUT_SCRIPT} wpe_gha+" $WPE_SSH_USER " :sites/" $WPE_ENV_NAME " /$( dirname ${INPUT_SCRIPT} )
108+ rsync --rsh=" ssh -v -p 22 -i ${WPE_SSHG_KEY_PRIVATE_PATH} -o StrictHostKeyChecking=no -o 'ControlPath=$SSH_PATH /ctl/%C'" " ${INPUT_SCRIPT} " " wpe_gha+$WPE_SSH_USER :sites/$WPE_ENV_NAME /$( dirname " ${INPUT_SCRIPT} " ) "
109109 fi
110110 fi
111111
112- ssh -v -p 22 -i ${WPE_SSHG_KEY_PRIVATE_PATH} -o StrictHostKeyChecking=no -o ControlPath=" $SSH_PATH /ctl/%C" $WPE_FULL_HOST " cd sites/${WPE_ENV_NAME} ${SCRIPT} ${CACHE_CLEAR} "
112+ ssh -v -p 22 -i " ${WPE_SSHG_KEY_PRIVATE_PATH} " -o StrictHostKeyChecking=no -o ControlPath=" $SSH_PATH /ctl/%C" " $WPE_FULL_HOST " " cd sites/${WPE_ENV_NAME} ${SCRIPT} ${CACHE_CLEAR} "
113113fi
114114
115115# close master ssh
116- ssh -O exit -o ControlPath=" $SSH_PATH /ctl/%C" $WPE_FULL_HOST
116+ ssh -O exit -o ControlPath=" $SSH_PATH /ctl/%C" " $WPE_FULL_HOST "
117117
118118echo " SUCCESS: Your code has been deployed to WP Engine!"
0 commit comments