2009-07-20 7 views
1

У меня есть полный день понимания использования Capistrano. Действительно хороший инструмент, который сэкономит мне много времени. Я действительно хочу использовать его для развертывания одного из моих многочисленных приложений php :)Вопросы о развертывании по умолчанию Задача в Capistrano для проекта PHP и config.php

Если у меня есть config.php с переменной $ env = "development". Есть ли способ заставить Capistrano изменить эту переменную для меня вместо «производства»? Или я должен забыть об этом и символизировать его для совместного использования?

веселит Гильермо

ответ

0

Мне нравится держать такие конфигурационные файлы отдельно - это делает его более конкретным и ясным. Как они хранятся отдельно и разворачиваются по своему усмотрению. У меня были довольно позитивные результаты, разветвляя мой код для разработки, постановки и жизни, - но я также видел ситуации, когда слияние из внешней ветви (т. Е. Три раза) является полным кошмаром в крупных проектах.

Кроме того, у вас могут быть config.php, config.php.live и т. Д., Но для этого требуется ручное обслуживание.

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

Если вы все еще хотите сделать это с Капистрано - вы можете использовать СЭД, чтобы изменить эту строку, используя регулярное выражение:

sed -i 's/$env=\"development\"/$env=\"production\"/' config.php 

очевидно, работает этот раз файл развернут.

+0

Я использую мои настройки связать: $ ENV = "DEV" $ конф [ "DEV"] [ "DB_HOST"] = "ххххх" $ конф [ "производство"] [ "DB_HOST"] = " yyyyyy " Итак, этой команды будет достаточно. танк вы – Guillermo