2015-01-27 9 views
5

Может ли кто-нибудь сказать мне, какой лучший способ настроить сборку TeamCity, когда я хочу запускать идентичные конфигурации сборки, но на разных корнях VCS?Лучшая практика для идентичных TeamCity основывается на разных корнях VCS

e.g; У меня есть несколько конфигураций «build &» для репозитория (для каждого проекта в репо), и я хочу дублировать все настройки в наших ветвях master/develop/r1.0/etc?

В прошлом я только что продублировал весь набор конфигурации сборки и изменил корень VCS, чтобы достигнуть этого, но по мере роста числа ветвей (с добавлением большего количества ветвей релиза с течением времени), как я могу упростить свои конфигурации и уменьшить количество мест, которые мне нужно будет внести, если что-то изменится?

+0

Вы строите и тестируете устаревшие релизы и т. Д.? - Лично я использую TC @work, но только для посредственных вещей, таких как «сборка и тестирование этой ветви выпуска и развертывание для тестирования», а затем поднять до «Производство». - Я сохраняю только одну ветвь релиза для каждого проекта. Я не думаю, что TC может вместить то, что вы хотите, любым другим способом, чем вы уже знаете и используете. Извините – VisualBean

+0

Я бы построил и протестировал их, как только была создана ветка, а затем любые исправления в этой ветке должны пройти один и тот же процесс. В любом случае в игре может быть 3-4 релиза. –

+0

Какой контроль версий вы используете? Как в, каковы разные корни VCS? – psych

ответ

4

Вот моя точка зрения на эту проблему. Я думаю, что это решение для вас использует шаблон конфигурации конфигурации + параметризация в корне VCS. У нас есть около 20 конфигураций сборки (1 конфигурация = 1 ветвь), выполненных только двумя шаблонами и одним vcs-корнем. Все обычные материалы для конфигурации хранятся в шаблоне. Лишь немногие конкретные параметры находятся в самой конфигурации, и вы набираете их при создании конфигурации из шаблона. Одним из них является имя ветки, которое в моем случае связано с именем конфигурации.

Шаблоны

  1. Continous шаблон интеграции - где вы только хотите, чтобы проверить проекты строим шаблон выпуска
  2. - Создание и релиз поколению

VCSroot точки только корень управления версиями. Параметру ветвления vcs root присваивается пользовательский параметр ветвления, который наследует конфигурацию конфигурации от шаблона конфигурации сборки.

У нас есть филиалы структурированы как этот

-Master 
-Development 
-Releases__3.4.1 
     |_3.4.2 
     |_3.4.3 

Мастера и развития с использованием шаблона непрерывной интеграции, и каждый новый филиал релиз использует шаблон конфигурации Release. Для меня процес создания новой конфигурации для 3.4.4 отрасли, как это:

  1. Создать новую конфигурацию
  2. Выбрать шаблон Выбрать: Отпустить
  3. Введите имя конфигурации Введите: 3.4.4
  4. Сохранить
  5. Run построить

точки является то, что имя параметр филиала в Release т emplate подобно этому

%BranchPath%=Release/%ConfigurationName% 

Для шаблона непрерывной интеграции было бы

%BranchPath%=%ConfigurationName% 

Далее в VCS корневой ветви устанавливается в% BranchPath%, передаваемым в него из конфигурации, поэтому VCS может работать с обоими шаблонами , и все 20 конфигураций И вот все ..:) Надеюсь, это как-то поможет

Смежные вопросы