TeamCity застрял на "обновлении источников" на одном РЕПО Git
Я только что настроил TeamCity 8.0 на Windows для сборки проектов (решений Visual Studio) в четырех отдельных репозиториях Git. Он работает, как и ожидалось, на трех из них, но на одном он застревает на обновляющих источниках. Настройки для четырех корней VCS идентичны (за исключением URL-адресов git repo fetch).
Все проекты TeamCity используют проверку на стороне сервера.
Журнал сборки для проблемного проекта содержит
[15:36:34]: bt1 (работает для 41m: 38s)
[15:36:34]: проверка изменений (запуск для 41m:37s)
[15:36:37]: публикация внутренних артефактов
[15:36:38]: [публикация внутренних артефактов] отправка сборки.начать.свойства.файл gz
[15:36:37]: очистка временного каталога: C:TeamCitybuildAgenttempbuildTmp
[15:36:37]: каталог оформления заказа: C:TeamCitybuildAgentwork62d0281b7178c739
[15:36:37]: обновление источников: проверка на стороне сервера (бежит за 41м:34С)
[15:36:38]: [обновление источников] будет выполнять чистую проверку. Причина: агент не имеет никакой версии источников проекта
[15:36:38]: [обновление источников] построение и кэширование чистого патча для корня VCS: git@qa.company.com:Company.WebSite.git#master
Используя Process Monitor на агенте сборки, я вижу, что он забивает следующую папку операциями ReadFile.
C:ProgramDataJetBrainsTeamCitysystemcachesgitgit-11F9493A.gitobjectspackpack-1490ccc8f7896ab876413465c4b48e87448bed35.пакет
Что .размер файла pack составляет около 300 МБ, что, по моему мнению, соответствует размеру РЕПО Git.
Я пытался удалить эту папку и перезапустить TeamCity build agent и build server Windows services, но он просто создается заново, а затем TeamCity снова забивает его.
Существуют ли какие-либо другие рекомендации для как устранить эту проблему?
3 ответа:
Сценарий в принятом ответе ко мне не относился. Я смог решить эту проблему, просто создав новый корень VCS для того же РЕПО и присоединив его к моей конфигурации сборки.
Я перепостил это на форумах TeamCity и получил ответ там.
TeamCity имеет ограничение по умолчанию на размер файла 128 МБ; если в вашем РЕПО есть какие-либо файлы, которые или когда-либо были больше этого ограничения, то клон РЕПО завершается неудачей.
У нас есть SQL-скрипт в нашем РЕПО, который раньше был размером около 200 МБ.
Исправление состояло в том, чтобы установить внутренний параметр в TeamCity, чтобы увеличить этот предел:
teamcity.git.stream.file.threshold.mb=256