Сборка из ветки в Гудзоне - PullRequest
0 голосов
/ 29 ноября 2010

Я работаю примерно с 30 или около того проектами в Гудзоне.Прямо сейчас они все автоматически строятся на коммите.Есть ли способ переключить все проекты между стволом и ветвью, сохраняя при этом возможность строить на коммите?

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

Ответы [ 3 ]

1 голос
/ 29 ноября 2010

Ну, у вас есть несколько вариантов:

1) Вы можете использовать параметризованные сборки: у вас все еще могут быть автоматические сборки, но одна из опций будет использоваться по умолчанию (по умолчанию это либо ствол, либо ответвление)

2) иметь отдельные сборки для каждого проекта, для транка и ветви

3) (так я настроил у нас). Два сервера сборки: один для магистральных проектов и один специально для филиалов.

1 голос
/ 01 декабря 2010

+ 1 или sagar: При первой же мысли я бы предложил первый вариант в качестве решения проблемы bobnix.

Однако, вопрос еще несколько раз, я не уверен, чего он на самом деле хочет достичь.Если он хочет запускать сборки либо из ответвления, либо из ствола, то ему может быть лучше использовать хук post commit.+1 для Дэйва Б. (решение 2)

Если он просто хочет построить ветки вместо ствола, то лучшим решением будет решение Дейва номер 1.

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

1 голос
/ 29 ноября 2010

Я не совсем уверен, как вы собираетесь использовать «переключатель», но я думаю, это зависит от того, как вы используете ветви.(В нашей установке ветки с непрерывными сборками, как правило, являются длительными проектами или выпусками. Поэтому мы настраиваем сборки для каждой ветви, отдельной от магистральных сборок. Если ваши ветки долговечные, я бы рекомендовал этот подход.)

Существует несколько способов решения этой проблемы:

  1. Написать сценарий для повторной настройки (или копирования) заданий с помощью Hudson Remote API .Если вы посмотрите на http://your -hudson / job / JOB_NAME / api , вы увидите дополнительные инструкции о том, как отправить новую конфигурацию задания.Это автоматический способ редактирования свойства scm/location/remote.

  2. Используйте хэнд после фиксации в вашей scm для запуска параметризованной сборки.В сообщении в блоге Hudson Labs описывается, как настроить ловушку пост-фиксации subversion (с целью отправки фиксаций, а не опроса).Вам нужно будет проделать немного больше работы в вашем скрипте, чтобы определить, что собирать.Это решение кажется довольно суетливым для меня.

...