60 lines
1.7 KiB
Bash
Executable File
60 lines
1.7 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
set -e
|
|
source "`dirname $0`/common.sh"
|
|
|
|
# Backup database
|
|
#INFO "Backing up database..."
|
|
#DB_FILE="${LOCAL_DOMAIN}-${_NOW_}-before-update.sql"
|
|
#TIME_START
|
|
#wp db export ${DB_FILE} > ${_LOG_} 2>&1
|
|
#TIME_STOP
|
|
|
|
# Synchronize uploads
|
|
INFO "Synchronizing uploads..."
|
|
TIME_START
|
|
rsync -ave "ssh -p 2222" ${REMOTE_USER}@${REMOTE_HOST}:${REMOTE_PATH}/wp-content/uploads/ wp-content/uploads/ --exclude node_modules --delete > ${_LOG_} 2>&1
|
|
TIME_STOP
|
|
|
|
# Synchronize database
|
|
INFO "Synchronizing database..."
|
|
DB_FILE="${REMOTE_DOMAIN}-${_NOW_}.sql"
|
|
TIME_START
|
|
ssh -p 2222 ${REMOTE_USER}@${REMOTE_HOST} "cd ${REMOTE_PATH} && wp --allow-root --skip-plugins --skip-themes db export ${DB_FILE}" > ${_LOG_} 2>&1
|
|
ssh -p 2222 ${REMOTE_USER}@${REMOTE_HOST} "cat ${REMOTE_PATH}/${DB_FILE}" | wp db import - > ${_LOG_} 2>&1
|
|
ssh -p 2222 ${REMOTE_USER}@${REMOTE_HOST} "rm -f ${REMOTE_PATH}/${DB_FILE}" > ${_LOG_} 2>&1
|
|
TIME_STOP
|
|
|
|
# Replace domain
|
|
INFO "Replacing domain ${REMOTE_DOMAIN} => ${LOCAL_DOMAIN}..."
|
|
TIME_START
|
|
wp --skip-plugins --skip-themes search-replace "https://${REMOTE_DOMAIN}" "${LOCAL_PROTOCOL}://${LOCAL_DOMAIN}" --all-tables > ${_LOG_} 2>&1
|
|
TIME_STOP
|
|
|
|
# Deactivate plugins
|
|
INFO "Deactivating plugins..."
|
|
TIME_START
|
|
wp --skip-plugins --skip-themes plugin deactivate \
|
|
cookie-law-info \
|
|
ithemes-security-pro \
|
|
wp-offload-ses \
|
|
> ${_LOG_} 2>&1 || true \
|
|
TIME_STOP
|
|
|
|
# Activate plugins
|
|
INFO "Activating plugins..."
|
|
TIME_START
|
|
wp --skip-plugins --skip-themes plugin install --activate \
|
|
disable-emails \
|
|
loco-translate \
|
|
wp-mail-logging \
|
|
> ${_LOG_} 2>&1 || true \
|
|
TIME_STOP
|
|
|
|
# Flush permalinks
|
|
INFO "Flushing permalinks..."
|
|
TIME_START
|
|
wp rewrite flush --hard > ${_LOG_} 2>&1
|
|
TIME_STOP
|
|
|
|
INFO "Local development site ready: ${LOCAL_PROTOCOL}://${LOCAL_DOMAIN}"
|