Надлежащая непрерывная интеграция и непрерывное развертывание с Git и Heroku

Я разрабатываю рубин на веб-сайте направляющих с помощью heroku и мерзавце.

Какие инструменты и функции я должен использовать для установки следующего простого процесса разработки?

КОД> РЕГИСТРАЦИЯ> АВТОМАТИЧЕСКИЙ ТЕСТ> АВТОМАТИЧЕСКИЙ РАЗВЕРТЫВАЕТСЯ

  • Я проверяю свой код в моем репозитории (предпочтительный вариант, размещенный мерзавец как GitHub)
  • Тесты автоматически запущены, И веб-сайт развертывается в моей подготовке heroku приложение
  • Если тесты передают, веб-сайт автоматически развертывается на моем производстве heroku приложение
  • Если тесты перестали работать, я хочу быть уведомленным так или иначе.

Как Вы сделали бы это?

12
задан Aymeric 27 June 2010 в 11:24
поделиться

2 ответа

Мы используем Integrity. Это довольно простое решение - оно не будет делать все под солнцем, но его довольно легко настроить, и оно поддерживает наиболее распространенные варианты использования / функции. Его также довольно легко взломать, если вы хотите, чтобы он делал больше.

Integrity заявляет:

Heroku — это самый простой и быстрый способ развернуть Integrity.

Однако:

ПРИМЕЧАНИЕ
Доступ к репозиториям через SSH на Heroku невозможен

. Это связано с тем, что вашему приложению Integrity потребуется ключ SSH. Это не невозможно, но определенно через несколько обручей нужно прыгнуть. Вам нужно будет дать Integrity закрытый ключ и поместить его в приложение, а затем взломать Integrity, чтобы использовать этот ключ ssh, когда он инициирует клон git.

Из того, что вы перечислили, автоматическое развертывание, вероятно, является тем, что большинство людей не ожидают от своего CI-сервера (и Integrity не предоставляет готовых решений). Вам нужно будет настроить git для использования этого ssh-ключа и инициировать git push из нужного места (из проверенного репозитория).

К сожалению, я не знаю подробностей того, как это сделать — на самом деле мы запускаем Integrity на VPS.

1
ответ дан 2 December 2019 в 22:37
поделиться

Ну, есть Hudson, который предоставляет плагин git, а также поддержку сценариев. Остальное - конфигурация, я полагаю.

Hudson: http://hudson.dev.java.net

0
ответ дан 2 December 2019 в 22:37
поделиться
Другие вопросы по тегам:

Похожие вопросы: