Дженкинс с Пилинцем дает сбой сборки

Я добавил шаг сборки для выполнения скрипта Python.
В этом скрипте пилинт называется с lint.run (.. args), чтобы проверить код.
Сценарий работает, но в конце концов, сборка не удается с единственным сообщением об ошибке:

STEPT STEP 'Выполнить Python Script «Make Build Public как сбой

У кого-то есть идея, почему это происходит?

-121--1209846- Может быть настроен Heroku, чтобы сделать истинное бесшовное развертывание? Наша команда недавно была очень заинтересована в постоянном развертывании, но мы столкнулись с небольшим количеством контрольно-блока, как на самом деле получить код Развернуто на Heroku - кажется неизбежным, что ...

Наша команда недавно была очень заинтересована в постоянном развертывании, но мы столкнулись с небольшим количеством контрольно-блока, как на самом деле получить код, развернутый на Heroku - это Кажется, неизбежно, что должна быть некоторая сумма простоя, чтобы сделать код толчок к Heroku.

В традиционной среде развертывание кода, вероятно, будет выглядеть что-то вроде этого:

  1. нажимайте код до промежуточного каталога где-то (старый код все еще жив)
  2. . Безопаснее бегать миграциями заранее, и эти немногие сломают код, могут быть охраняемым против)
  3. , примите половину (или какой-то процент серверов) из балансировщика нагрузки.
  4. Разверните код на эти серверы.
  5. Если возможно, запустите какой-то автоматический тест дыма / тренируйте серверы, чтобы они «горячие»
  6. переключатель, на которых серверы вводятся и выходит из балансировщика нагрузки
  7. , промыть и повторить.

С Heroku у меня очень мало контролирует два критических шага:

  • Я сначала не могу запускать миграции базы данных. Один из способов того, чтобы обойтись, это сохранить миграции базы данных отдельно разветвленными, и сначала подталкиваем их в Heroku - что в то время как болезненным, решит проблему - но только усугубит ... [
  • Время выступления Dyno Довольно долгое время - очевидно, что это больше вина рельсов, чем Heroku, но ключевой проблемой в том, что я не могу сделать что-то вроде табло нагрузки, чтобы убедиться, что мое приложение будет готово и загружено перед недавно развернутым сервером возвращается в балансировщик нагрузки. Вместо этого у меня почти нет выбора, кроме как дать пользователям 10-15 секунды нагрузки и надежды на лучшее (и сделать это дважды, если я использую стратегию развертывания базы данных сверху)

Мы используем экран обслуживания в настоящее время, Но это не будет масштабируемым решением, если мы перейдем к полным непрерывным развертыванию (мы, вероятно, имели около 10-20 развертываний в день, а 10-20 * 30 секунд сердгового экрана начинает складывать)

бежать в подобные проблемы? Как вы их обратились? Любые великие тематические исследования / истории успеха для TRUE Непрерывное развертывание на Heroku?

14
задан Ryan Brunner 8 September 2011 в 11:26
поделиться