Skip to content
Snippets Groups Projects
Commit 7bcf59a9 authored by Brian Canini's avatar Brian Canini
Browse files

Merge branch 'lee5151' into 'main'

Add cron run to site deployment script

See merge request !63
parents b58cbfa5 add865ba
No related branches found
No related tags found
1 merge request!63Add cron run to site deployment script
#!/usr/bin/env bash
LIGHT_GREEN='\x1B[92m';
NC='\x1B[39m';
LIGHT_GREEN='\x1B[92m'
NC='\x1B[39m'
if [[ -z $1 ]]; then
echo;
echo "Usage: $0 <site.env>";
echo;
echo;
echo
echo "Usage: $0 <site.env>"
echo
echo
fi
if [[ -z `which gdate` ]]; then
echo "'coreutils' homebrew package not installed...";
if [[ -z `which brew` ]]; then
echo "Homebrew is NOT installed. Homebrew needs to be installed to proceed.";
echo "Visit https://brew.sh/ for more information.";
exit 1;
if [[ -z $(which gdate) ]]; then
echo "'coreutils' homebrew package not installed..."
if [[ -z $(which brew) ]]; then
echo "Homebrew is NOT installed. Homebrew needs to be installed to proceed."
echo "Visit https://brew.sh/ for more information."
exit 1
else
echo "Attempting to install 'coreutils'...";
brew install coreutils;
echo "Attempting to install 'coreutils'..."
brew install coreutils
fi
fi
SITE_NAME=${1%.*};
ENV=${1##*.};
shift;
SITE_NAME=${1%.*}
ENV=${1##*.}
shift
echo;
echo -e "${LIGHT_GREEN}==================================================================================${NC}";
echo
echo -e "${LIGHT_GREEN}==================================================================================${NC}"
printf "${LIGHT_GREEN}== %-30s ================================================${NC}\n" $SITE_NAME
echo -e "${LIGHT_GREEN}==================================================================================${NC}";
echo "SITE_NAME[$SITE_NAME] ENV[$ENV]";
echo;
echo -e "${LIGHT_GREEN}==================================================================================${NC}"
echo "SITE_NAME[$SITE_NAME] ENV[$ENV]"
echo
echo "Checking backup... ";
echo "Checking backup... "
BACKUP_DATE=`terminus backup:info --field=date --format=string $SITE_NAME.$ENV`;
BACKUP_DATE=$(terminus backup:info --field=date --format=string $SITE_NAME.$ENV)
if [[ -z $BACKUP_DATE ]]; then
BACKUP_DATE=0;
BACKUP_DATE=0
fi
BACKUP_DATE=${BACKUP_DATE%.*};
echo "BACKUP_DATE: `gdate -d @$BACKUP_DATE`";
BACKUP_DATE=${BACKUP_DATE%.*}
echo "BACKUP_DATE: $(gdate -d @$BACKUP_DATE)"
NOW=`gdate +%s -u`;
BACKUP_AGE=`expr $NOW - $BACKUP_DATE`;
NOW=$(gdate +%s -u)
BACKUP_AGE=$(expr $NOW - $BACKUP_DATE)
if [[ $BACKUP_AGE -gt 3600 ]]; then
echo "Backup is stale ($BACKUP_AGE seconds ago)...";
echo "terminus backup:create $SITE_NAME.$ENV --keep-for=30 --element=db";
terminus backup:create $SITE_NAME.$ENV --keep-for=30 --element=db;
echo "Backup is stale ($BACKUP_AGE seconds ago)..."
echo "terminus backup:create $SITE_NAME.$ENV --keep-for=30 --element=db"
terminus backup:create $SITE_NAME.$ENV --keep-for=30 --element=db
else
echo "Backup is less than an hour old.. skipping new backup.";
echo "Backup is less than an hour old.. skipping new backup."
fi
echo;
echo
if [[ $ENV == 'dev' ]]; then
terminus site:upstream:clear-cache $SITE_NAME;
terminus upstream:updates:list $SITE_NAME.$ENV;
terminus upstream:updates:apply $SITE_NAME.$ENV --updatedb --accept-upstream;
terminus remote:drupal $SITE_NAME.$ENV nar;
terminus remote:drush $SITE_NAME.$ENV cr;
terminus env:clear-cache $SITE_NAME.$ENV;
terminus site:upstream:clear-cache $SITE_NAME
terminus upstream:updates:list $SITE_NAME.$ENV
terminus upstream:updates:apply $SITE_NAME.$ENV --updatedb --accept-upstream
terminus remote:drush "$SITE_NAME"."$ENV" ev 'node_access_rebuild();'
terminus remote:drush $SITE_NAME.$ENV cr
terminus env:clear-cache $SITE_NAME.$ENV
else
if [[ -z $1 ]]; then
while [[ -z $DEPLOY_MSG ]]; do
echo;
read -p "Enter deployment message: " DEPLOY_MSG;
echo;
echo
read -p "Enter deployment message: " DEPLOY_MSG
echo
done
else
DEPLOY_MSG=$@;
DEPLOY_MSG=$@
fi
terminus env:deploy $SITE_NAME.$ENV --updatedb --note="$DEPLOY_MSG"
terminus remote:drush "$SITE_NAME"."$ENV" ev 'node_access_rebuild();'
terminus remote:drush $SITE_NAME.$ENV cr
terminus env:clear-cache $SITE_NAME.$ENV
if [[ $ENV == 'live' ]]; then
echo "Re-rendering the People Directory view cache"
terminus remote:drush -- "$SITE_NAME.$ENV" cron-run imagecache_render_cron --force
fi
terminus env:deploy $SITE_NAME.$ENV --updatedb --note="$DEPLOY_MSG";
terminus remote:drupal $SITE_NAME.$ENV nar;
terminus remote:drush $SITE_NAME.$ENV cr;
terminus env:clear-cache $SITE_NAME.$ENV;
fi
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment