Archive for the ‘automation’ tag
Capistrano и deploy проектов
Capistrano является инструментом для автоматизации задач на одном или нескольких удаленных серверах. Он выполняет команды на всех целевых машинах параллельно и обеспечивает механизм для отката изменений. Поэтому удобно использовать Capistrano для развертывания web-приложений.
Для того, чтобы без использования Capistrano разместить свой код в production среде, можно выполнить одно из следующих действий:
- Залить по FTP весь код приложения, а затем обновлять измененные файлы.
- При использовании системы контроля версий (например, Subversion) зайти через SSH на production сервер и получить/обновить код с помощью checkout/update из репозитория.
- Использовать скрипты на основе rsync для синхронизации своей рабочей копии с сервером.
Разумеется, эти подходы имеют полное право на существование. Но кроме обновления кода есть и другие вещи, которые необходимо выполнять (применение миграций базы данных, очистка кэша и т.д.). Capistrano позволяет автоматизировать все рутинные операции связанные с развертыванием и обновлением приложений, оставляя больше времени на процесс разработки.