Агент Team City Build для каждой целевой среды?

Я новичок во всем процессе CI, и мне было поручено найти решение. Так что для кого-то этот вопрос может показаться глупым...

Итак, я смотрел на Team City (версия Pro) и задавался вопросом, нужно ли настраивать отдельные агенты сборки в зависимости от целевой среды.

Наш портфель приложений включает несколько устаревших веб-приложений, которые работают на компьютере с Windows Server 2003. Новые веб-приложения, разработанные недавно, работают на Windows Server 2008 R2. Естественно, у нас есть отдельные тестовые блоки для каждой среды.

Должен ли я настроить агент сборки для каждого сервера o/s? (т.е. по одному на 2003 и 2008 годы). Я думаю, было бы разумно увидеть, что выходные данные сборки должны быть готовы к выпуску в производство.

EDIT: разработка приложений .NET.


person empo    schedule 01.08.2012    source источник
comment
это .NET или Java? если да, то не имеет значения, на какой ОС выполняется сборка, т.е. у вас будет один агент сборки   -  person wal    schedule 01.08.2012
comment
Я обновил свой вопрос, но да, мы разрабатываем приложения .NET.   -  person empo    schedule 01.08.2012


Ответы (1)


Если все ваши приложения работают на .NET, то не имеет значения, на какой машине они будут скомпилированы. (при условии, что платформа .net, на которую вы ориентируетесь, работает как в 2003, так и в 2008 году)

Так что в вашем случае у меня будет один агент сборки, работающий в 2008 году, который будет создавать сборки для ВСЕХ ваших сред.

Цель агентов мультисборки — распределить ваши сборки по нескольким машинам, что может быть очень полезно, если у вас много продуктов и частые проверки. Для простой начальной настройки достаточно иметь 1 агент сборки.

Теперь, как часть процесса сборки/развертывания, ваш агент сборки может РАЗВЕРНУТЬ сборки как на машинах 2003, так и на машинах 2008. TC не предназначен для развертывания, но его все же можно использовать для развертывания сборок довольно легко, если все машины находятся в одной локальной сети.

person wal    schedule 01.08.2012
comment
Интересно... что побудило меня задать свой вопрос в первую очередь, так это то, что я где-то читал, что сервер, на котором выполняется сборка, должен имитировать рабочий сервер. Кроме того, я не упомянул ранее, что на сервере 2003 года есть одно приложение, работающее на .NET 3.5, и одно на том же компьютере, работающее на .NET 4. - person empo; 01.08.2012
comment
`Я где-то читал, что сервер, на котором выполняется сборка, должен имитировать рабочий сервер` ‹ -- где вы это прочитали? С .NET это не имеет значения. Запуск ваших тестовых машин с той же ОС, что и рабочий сервер, БУДЕТ иметь значение, так что оставьте то же самое. что касается вашей проблемы с .net3.5 и .net4, опять же, если сервер сборки/агент сборки оба установлены, он сможет скомпилировать исходный код, предназначенный для обеих сред выполнения, поэтому это не имеет значения. я бы порекомендовал запускать агент сборки на 1) более быстром ПК 2) более современной ОС - person wal; 01.08.2012
comment
martinfowler.com/articles/ - person empo; 02.08.2012
comment
спасибо, это хорошее чтение, но там ничего нет о сборке/компиляции на той же ОС, что и ваша производственная машина. Я считаю, что вы уже делаете то, что там написано, т.е. клонируете свою производственную среду в тестовой среде. - person wal; 02.08.2012