Управление группами конфигураций сборки в Hudson - PullRequest
2 голосов
/ 20 марта 2010

Я использую Hudson для создания своего приложения.У меня есть несколько ветвей, которые приходят и уходят.Всякий раз, когда есть новая ветвь, я должен настроить для нее следующие сборки:

  • непрерывная сборка, которая запускается после каждого изменения в SVN
  • ночная сборка
  • ночная генерация сайта (я использую Maven под капотом)
  • и еженедельная сборка интеграции для некоторых веток

в настоящее время это означает, что мне нужно скопировать четыре конфигурации шаблона и установитьих с ответвлением URL.Мне это не нравится по двум причинам:

  • Это избыточно, поэтому изменение чего-либо подвержено ошибкам и занимает много времени.
  • Мне нужно четыре полных проверки продуктана каждую ветвь на каждом подчиненном билде, плюс четыре отдельных закрытых хранилища Maven, не говоря уже о встроенных артефактах.Это много потерянного пространства.

Вместо этого мне бы хотелось иметь одно рабочее пространство и одну конфигурацию для всех этих сборок.Возможно ли это с Гудзоном?

1 Ответ

1 голос
/ 22 марта 2010

Если вы исходите из предположения, что ваша ночная сборка такая же, как и ваша непрерывная сборка. Вы можете опубликовать свои артефакты непрерывной сборки в путь к папке / репозиторию, который содержит дату. Таким образом, ваша вторая и последующие сборки за день перезапишут предыдущие сборки за этот день.

Создание сайта и еженедельная сборка интеграции сложнее, поскольку вам потребуются условные этапы сборки. (Идея состоит в том, чтобы запустить пакетные сценарии / сценарии оболочки, которые определят, настало ли время для действия (например, сборки сайта), и запустить его как часть этого сценария).

По моему мнению, лучшее решение - написать сценарий пакетной обработки / оболочки (или подойдет и программа на Java), который копирует ваши шаблоны и заменяет запись svn во всех ваших новых заданиях. Чем у вас есть два шага для создания новой ветки. Сначала запустите ваш скрипт с путем SVN в качестве параметра, а затем скажите Хадсону перезагрузить конфигурацию. Прелесть решения в том, что вы можете при необходимости изменять свои шаблоны, не внося изменений в свои сценарии.

...