Большинство людей настраивают CI для создания и
тестировать их приложение при каждом нажатии на их
центральный репозиторий SCM, или только когда
подталкивать к своей постановочной ветви?
Зависит от размера команды и скорости проекта. Чем больше людей работает над разными ветвями кода, тем чаще и энергичнее я хочу, чтобы CI запускался. Я бы порекомендовал вам начинать с максимально возможного количества КИ и постепенно отступать от него по своему усмотрению.
Я буду использовать CI-сервер для
автоматически запускать flay, flog, reek,
и rcov - есть ли другие
инструменты тестирования или покрытия кода I
должен бежать?
Все, что покрыто метрической фу, - хорошее начало. Если в вашей команде есть технический писатель и / или документация является частью вашей поставки, вы также можете добавить туда rdoc.
Я планирую развернуть свое приложение на
Slicehost. Должен ли я настроить CI
сервер на отдельном слайсе Slicehost
это установлено, чтобы быть идентичными (WRT
установленные драгоценные камни, библиотеки и т. д.) к моему
производственный срез?
Если вы можете себе это позволить, да. Обычно небольшие команды и новые стартапы не могут позволить себе выделенный сервер для каждой задачи, но я большой сторонник изоляции. Что касается идентичной установки, продавайте все, что вы можете; установка нового сервера должна быть быстрой, простой и автоматизированной.
Если я использую отдельный срез для CI,
есть ли вред в использовании CI
срез для промежуточного сервера?
Единственный вред - перекрестное загрязнение между общими ресурсами, например, Версии гемов, ресурсы баз данных и т. д. Если вы методичны, у вас, вероятно, все будет в порядке, но если вы можете позволить себе отдельные серверы для каждой среды, я бы предпочел безопасность, а не сожаление.