Capistrano — предварительное развертывание и обновление символической ссылки вручную

Я использую рабочий процесс развертывания Capistrano для проекта Magento.

При развертывании Capistrano создает этот проект Magento на сервере, используя https://github.com/Cotya/magento-composer-installer.

Проблема в том, что иногда мои модули Magento устанавливаются неправильно, и мне нужно очистить кеш, переиндексировать или выполнить какую-то другую задачу, чтобы получить все на 100%. Проблемы возникают время от времени, поэтому я не смог внести исправления в процесс развертывания.

Я бы хотел, чтобы при развертывании Capistrano не сразу менял символическую ссылку на новую сборку. Вместо этого я могу просмотреть сайт по другой ссылке, исправить то, что нужно исправить, а затем изменить символическую ссылку вручную.

Можно ли настроить с помощью Capistrano?

Если нет, то другим моим решением является использование флага обслуживания Magento, однако я бы предпочел не переводить сайт в обслуживание. Открыты и для других идей!

Спасибо


person pessato    schedule 08.11.2015    source источник
comment
Я голосую за то, чтобы закрыть этот вопрос как не относящийся к теме, поскольку Stack Overflow — это связанный с программированием сайт вопросов и ответов. Ваш вопрос не о программировании. Возможно, вам следует опубликовать его на magento.stackexchange.com?   -  person Enigmativity    schedule 08.11.2015
comment
Мой вопрос связан с Capistrano, который представляет собой инструмент автоматизации удаленного сервера, который поддерживает сценарии и, на мой взгляд, относится к программным инструментам, обычно используемым программистами. Magento был использован в качестве моего примера, однако вопрос может касаться любого, кто использует Capistrano. Тем не менее, я попробую magento.stackexchange, спасибо.   -  person pessato    schedule 08.11.2015


Ответы (1)


Вероятно, это можно сделать, сказав Capistrano не включать изменение символической ссылки как часть процесса (что-то вроде Rake::Task["deploy:symlink:release"].clear_actions), а затем запустив это вручную (cap [env] deploy:symlink:release).

Однако в категории «Открыты и для других идей!» Я бы посоветовал вам создать промежуточный сайт. Создайте процесс для автоматического восстановления базы данных prod обратно на этап, затем разверните свой код на этапе и проверьте его там. Как только вы подтвердите, что это работает, выполните развертывание в рабочей среде и позвольте символическим ссылкам автоматически выполнять свою работу.

person will_in_wi    schedule 09.11.2015