Это касается того, как я могу определить, где агент сборки TFS тянет исходный код до/при выполнении сборки.Team Foundation Build Service здание в неправильном месте - VS2008 Team System
Мы восстанавливаем наш устаревший и медленный сервер сборки WinXP на гораздо более быстром новом сервере Win7x64 Pro. Все программное обеспечение установлено, и существующие определения сборки успешно запускаются с использованием определения нового агента сборки. Единственными видимыми различиями между старыми и новыми агентами сборки являются имя агента и имя целевого сервера: строятся определенные версии, которые должны быть удалены в один общий ресурс на каждом сервере (\\ servername \ builds), и каждый агент сборки определяет местоположение сборки как $ (Temp) \ $ (BuildDefinitionPath). Мы позаботились о том, чтобы воссоздать точно такую же структуру папок местоположения на новом компьютере, что и на старом. Обе службы сборки работают под одной учетной записью (\ DevBuildServer), хотя, как правило, сборки запускаются без входа в Windows.
Как бы там ни было: с помощью того же определения сборки старый агент сборки корректно получает исходный код в желаемое целевое местоположение (d: \ temp на старом сервере), но новый агент сборки получает все это неправильный диск и путь на новом сервере.
Из журналов:
Старый сборки агент: Get TeamFoundationServerUrl = "HTTP: // devserver2: 8080 /" BuildUri = "vstfs: /// Build/Build/3437" Force = True перезапись = False PopulateOutput = False Preview = False Рекурсивный = True Version = "C6165" Workspace = "DEVBUILDSERVER_25" Получение d: \ Temp \ Matrix5Branches \ Matrix5313 \ Sources .... и т.д.
вбизи агент: Get TeamFoundationServerUrl = "HTTP : // devserver2: 8080/"BuildUri =" vstfs: /// Build/Build/3459 "Force = True Overwrite = False PopulateOutput = False Preview = False Рекурсивный = True Version =" C6176 "Workspace =" DEVBUILDSERVER2_30 " Получение C: \ Users \ DEVBUILDSERVER \ AppData \ Local \ Temp \ Matrix5Branches .... и т. Д.
Проблема в том, что на новом сервере целевой путь слишком длинный, поэтому сборка завершается с ошибкой. Также нам нужно иметь сборки самостоятельно на отдельном диске, чтобы они не были скопированы. Поэтому на новом сервере сборки мне нужно установить целевой путь для исходного кода: d: \ temp. Мой вопрос: как/где задано местоположение/путь для целевой папки сборки (т. Е. Где выполняется сборка)? Я попытался создать новое определение агента сборки и новую сборку с нуля, но я не могу найти нигде, что это определено, но, очевидно, это где-то, потому что тот, кто построил старый сервер сборки, справился с этим.
ТИА - если я получаю это фиксированным сегодня я с нетерпением ждет расслабленных выходных ....
Если вы используете те же файлы TFSBuild.proj, что и на старой машине, у которых есть несколько имен машин/путей и т. д., закодированные в них вверху. Вы можете взглянуть туда, если вы еще этого не сделали. –
Единственные пути, определенные в файле TFSBuild.proj, прокомментированы как там для обратной совместимости с V1 (мы позже, чем это). Синхронизация их не решает проблему. – haughtonomous