Archive for the ‘development’ Category
Включение цветного вывода для Capistrano
Устанавливаем библиотеку capistrano_colors:
Добавляем в ~/.caprc подключение этой библиотеки:
Развертывание Symfony приложения с Capistrano и Subversion
Одним важных процессов в разработке web-приложений, в том числе и написанных с использованием фреймворка Symfony, является деплоймент или разворачивание и обновление проекта на удаленном сервере. Для выполнения подобных действий существует множество средств и одним из самых популярных является Capistrano. Он достаточно прост в освоении, очень гибок в настройке и функциональный богат, но по-умолчанию настроен для Ruby on Rails приложений.
Настроить Capistrano для развертывания Symfony приложений не составляет особого труда, так как все этапы стандартного процесса с легкостью можно переопределить.
В корне проекта запускаем capify . и начинаем настраивать config/deploy.rb.
Capistrano и deploy проектов
Capistrano является инструментом для автоматизации задач на одном или нескольких удаленных серверах. Он выполняет команды на всех целевых машинах параллельно и обеспечивает механизм для отката изменений. Поэтому удобно использовать Capistrano для развертывания web-приложений.
Для того, чтобы без использования Capistrano разместить свой код в production среде, можно выполнить одно из следующих действий:
- Залить по FTP весь код приложения, а затем обновлять измененные файлы.
- При использовании системы контроля версий (например, Subversion) зайти через SSH на production сервер и получить/обновить код с помощью checkout/update из репозитория.
- Использовать скрипты на основе rsync для синхронизации своей рабочей копии с сервером.
Разумеется, эти подходы имеют полное право на существование. Но кроме обновления кода есть и другие вещи, которые необходимо выполнять (применение миграций базы данных, очистка кэша и т.д.). Capistrano позволяет автоматизировать все рутинные операции связанные с развертыванием и обновлением приложений, оставляя больше времени на процесс разработки.
Используем Postfix для web-разработки
При разработке web-приложений необходима возможность проверить отправленные письма локально.
Чаще всего письма отправляют используя команду sendmail или с помощью SMTP. Сделать полноценную заглушку почтового сервера, сохраняющую всю почту в одно место, сможет Postfix.
Устанавливаем Postfix (этот процесс зависит от используемой системы, например, sudo apt-get install postfix в debian-based linux) и немного изменяем конфигурационные файлы.
В конец файла /etc/postfix/main.cf добавляем строки:
virtual_alias_maps = regexp:$config_directory/virtual-regexp
Первое ограничит подключение к SMTP серверу только через loopback интерфейс, а второе задает файл с маппингом виртуальных алиасов.
Создаем файл /etc/postfix/virtual-regexp:
где localuser - ваш локальный пользователь, который будет получать всю отправляемую почту.
После изменения конфигурационных файлов перезапускаем Postfix.
Теперь осталось настроить почтовую программу на получение писем из локального почтового ящика.