Написание целого приложения поверх Capistrano - PullRequest
2 голосов
/ 21 июня 2010

Я работаю над задачей, которая требует извлечения источника из репозитория github, а затем изменения некоторых файлов из извлеченного репозитория на основе некоторых существующих данных конфигурации, поступающих из отдельного вызова в другойвеб-сервис как JSON.Изменения в извлеченном коде являются временными и не будут переданы обратно в github.

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

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

Таким образом, вы можете сказать, что это приложение, основанное на самом Capistrano, с локальным развертыванием.Похоже ли это на здравый подход?Должен ли я написать это простым Ruby вместо этого?Или, может быть, написать части приложения в чистом Ruby, и соединить части с Capistrano.Любое предложение приветствуется.

Ответы [ 2 ]

1 голос
/ 22 июня 2010

Искренне рекомендую Thor (см. Github), это синтаксическая налоговая структура с чистым рубиновым синтаксисом, такая как Rake (но, как и в Capistrano, она требует много усилий для группирования кластеров серверов и обработки соединений… Rake имеет много общего с более классическим «Make» или сборкой задачи)

Рекомендация от меня - это набор задач Thor, где, при необходимости, используется raw-net-ssh (cap основан на Net :: SSH).

Для проверки я рекомендую вам посмотреть проект "Amp" ... у них есть согласованный кросс-scm способ делать проверки (но это наименьшая из ваших проблем) - вы можете посмотреть здесь, но для них еще рано - http://github.com/michaeledgar/amp

Источники: (как сопровождающий Capistrano, я планирую выпустить наш собственный DSL, чтобы заменить его на Thor, так как это имеет гораздо больше смысла)

1 голос
/ 21 июня 2010

Что касается меня, я пишу такие вещи в Rakefile, а затем использую команду rake для их вызова.

Вы можете обнаружить, что Rake-файлы похожи на Capfiles, поэтому rakeобычно используется для выполнения некоторых локальных задач, а cap для удаленных.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...