Могу ли я сохранить ccnet.config CruiseControl.Net в svn, а затем заставить CruiseControl обновлять свой собственный файл конфигурации при регистрации изменений?

StackOverflow https://stackoverflow.com/questions/543778

Вопрос

Я хотел бы иметь возможность хранить файл ccnet.config нашего CruiseControl.Net в svn, а затем, когда я проверю изменение, то есть добавлю новый проект, он обновится сам.

Таким образом, у меня есть файл конфигурации под контролем версий, и я могу отслеживать вносимые изменения.

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

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

Есть предположения?

Это было полезно?

Решение

Мы делаем почти именно это, и никаких черных дыр не появилось... или, может быть, они появились и просто испарились?:) CruiseControl.NET справляется с этим очень хорошо, он даже будет ждать завершения других сборок, прежде чем перезапуститься.

Наш процесс кажется немного более сложным, вот краткое изложение рабочего процесса:

  • В наших сборках «Омега» (RTM, GA, Gold, ...) для проекта мы автоматически создаем новый проект ccnet.Проект основан на ветке (имя которой также генерируется автоматически из версия сборки), который также создается одновременно.
  • Добавляется новый проект, ccnet.config обновляется, чтобы ссылаться на него, рабочая копия обновляется, фиксируется, а затем обновляется.

Таким образом, нам требуется (максимум) 2 щелчка мышью, чтобы создать сборку выпуска из ccnet: один щелчок для создания ветки и проекта ccnet, затем еще один щелчок, чтобы принудительно создать первую сборку для ветки выпуска, или вы можете просто дождаться неизбежного. пластырь ;-)

Будем рады предоставить дополнительную информацию, если вы этого хотите.

Другие советы

Мне также не нравилось вручную изменять ccnet.config.Вот что я сделал:

Добавлен ccnet.config (и связанные с ним) в svn.Сделал проект «Конфигурация» и добавил следующие части:

  • Блок SourceControl для проверки конфигурации в каталоге Prep.
  • Скопируйте файл конфигурации, которого нет в svn (часть конфигурации безопасности), в каталог «prep».
  • Запустите CCNetValidator снова в каталоге Prep.
  • Извлеките конфигурацию в фактическое местоположение конфигурации.

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

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top