Drupal. Автоматическое обновление локального рабочего окружения.

Иногда, когда начинаешь работать над новой задачей, бывает необходимо обновление локальной версии Drupal кодом из git репозитория, а базу обновить из бекапа. Для этой цели я использую простенький Bash скрипт.

bendertheoffender.jpg

#!/bin/bash
 
echo 'Update modules and themes folders from git'
# Delete modules and themes folder and copy it from the git folder. Удаляем папки с темами и модулями и копируем на их место папки из git репозитория
rm -rf sites/all/modules
rm -rf sites/all/themes
cp -r ~/git/drupal/sites/all/modules sites/all/modules
cp -r ~/git/drupal/sites/all/themes sites/all/themes
 
# Updating DB from DB.mysql backup file. Обновляем базу из бекапа, который находится в файле DB.mysql
echo '-- update DB from DB.mysql'
`drush sql-connect` -e "show tables" -s | xargs -I "@@" `drush sql-connect` -e "DROP TABLE @@"
`drush sql-connect` < DB.mysql
 
# Setup Drupal's variables. Устанавливаем переменные окружения Drupal
echo '-- setup Drupal variables'
drush vset variable_first 'value_one'
drush vset variable_second 'value_two'
 
# Clear Drupal cache. Очищаем кэш Drupal
echo '-- clear cache'
drush cc all
 
# Open site in default browser. Открываем сайт в браузере по умолчанию.
echo '-- open site'
open http://my-drupal-site.dev/user/ 

Скрипт размещаем в папке с нашим локальным Drupal и по необходимости запускаем из терминала.