diff --git a/deploy.sh b/deploy.sh index 5a717dc..9d37e56 100755 --- a/deploy.sh +++ b/deploy.sh @@ -1,21 +1,41 @@ #!/bin/bash +# --- CONFIGURATION (Edit these for new environments) --- +SERVER="newspapers2.islandarchives.ca" +THEME_DIR="/var/www/islandnewspapers2/web/themes/custom/olivesnews" +SITE_ROOT="/var/www/islandnewspapers2/web/sites/islandnewspapers2" +DRUSH_PATH="/var/www/islandnewspapers2/vendor/drush/drush/drush" +# -------------------------------------------------------- + # 1. Check if a commit message was provided -if [ -z "$1" ] - then - echo "Error: Please provide a commit message." +if [ -z "$1" ]; then + echo "โŒ Error: Please provide a commit message." echo "Usage: ./deploy.sh 'Your message here'" exit 1 fi +COMMIT_MSG="$1" + +echo "๐Ÿš€ Starting deployment workflow..." + # 2. Local Git workflow +echo "๐Ÿ“ฆ Committing and pushing local changes..." git add --all -git commit -m "$1" -git push # I added this because the server needs something to pull! +git commit -m "$COMMIT_MSG" +git push # 3. Remote Server workflow -# This runs the commands on the server and then closes the connection -ssh newspapers2.islandarchives.ca "cd /var/www/islandnewspapers2/web/themes/custom/olivesnews && git pull && cd /var/www/islandnewspapers2/web/sites/islandnewspapers2 && /var/www/islandnewspapers2/vendor/drush/drush/drush cr" +echo "๐Ÿ”— Connecting to $SERVER..." +# We wrap the remote commands in a single string for SSH +# The '&&' ensures that if one step fails, the script stops immediately. +ssh "$SERVER" " + echo '๐Ÿ“ฅ Pulling code into theme folder...' && \ + cd $THEME_DIR && \ + git pull && \ + echo '๐Ÿงน Rebuilding Drupal cache...' && \ + cd $SITE_ROOT && \ + $DRUSH_PATH cr +" -echo "Done! Deployment successful." +echo "โœ… Done! Deployment successful."