Как стать автором
Обновить

Простая схема деплоя мультисайтового друпала

Время на прочтение2 мин
Количество просмотров1.4K
Сразу оговорюсь что я во всем что касается друпала новичок и друпало-гуру пользователям наверно ничего нового не расскажу. Все нижеописанное есть результатом немногим больше годичной деятельности в области предоставления хостинга сайтов на друпале нескольким знакомым.

Думаю все знают, что друпал предоставляет такую прекрасную фичу как мультисайтовость — в папке sites создаете себе несколько папок с различными конфигами и смело натравляете все домены на одну папку с друпалом. Все гениально и просто ровно до того момента как выходит новая версия друпала — переносить папки в консоли мне было накладно, переписывать новый друпал поверх старого — как-то не по феншую, вот я и придумал следующую схемку



drupal-6.13
drupal-6.14
drupal-6.15
drupal-6.15.tar.gz
drupal-stable
running
upgrade.rb


главная папочка тут — running, именно там подпапки с сайтами, конфигами и разными модулями для сайтов. что там еще интересного? а вот что:

cgi-bin
cron.php -> ../drupal-stable/cron.php
files
includes -> ../drupal-stable/includes
index.php -> ../drupal-stable/index.php
install.php -> ../drupal-stable/install.php
misc -> ../drupal-stable/misc
modules -> ../drupal-stable/modules
profiles -> ../drupal-stable/profiles
scripts -> ../drupal-stable/scripts
sites
themes -> ../drupal-stable/themes
update.php -> ../drupal-stable/update.php
xmlrpc.php -> ../drupal-stable/xmlrpc.php


все что есть друпалом есть линком на папку drupal-stable. что у меня в папке drupal-stable?

cron.php -> ../drupal-6.15/cron.php
includes -> ../drupal-6.15/includes
index.php -> ../drupal-6.15/index.php
install.php -> ../drupal-6.15/install.php
misc -> ../drupal-6.15/misc
modules -> ../drupal-6.15/modules
profiles -> ../drupal-6.15/profiles
scripts -> ../drupal-6.15/scripts
themes -> ../drupal-6.15/themes
update.php -> ../drupal-6.15/update.php
xmlrpc.php -> ../drupal-6.15/xmlrpc.php


все в папке есть линками на последнюю версию друпала

ну и завершальный аккорд — файл upgrade.rb:

файл смотрит в текущую директорию и перелинкивает drupal-stable до последней версии в папке

итого весь процесс обновления занимает 3 шага:

1. скачать последний друпал: wget ftp.drupal.org/files/projects/drupal-6.15.tar.gz
2. разархивировать: tar -zxf drupal-6.15.tar.gz
3. ruby upgrade.rb

ну и надо еще на каждом сайте посетить страничку update.php (думаю тоже можно автоматизировать но на это я уже забил)

P.S. вот дописал до сего момента и думаю а зачем мне папка drupal-stable если можно сразу running линковать? вобщем если у кого найдется аргумент в пользу этой папки — ну и хорошо, а переделывать скрипты мне лень =)
Теги:
Хабы:
+14
Комментарии12

Публикации