До недавнего времени мы создавали наше решение без какого-либо "конвейера" в Jenkins, поэтому в настоящее время я нахожусь в процессе перевода нашей сборки на многоотраслевые конвейеры.
Проблема, с которой я сталкиваюсь, заключается в том, чтоУ нас много структуры и нашего решения (много подпапок, а иногда и несколько громких имен).
В настоящее время конвейер jenkins извлекает все в папке, которая выглядит следующим образом:
D:\ws\ght-build_feature_pipelines-TMQ33LB5OQIQ5VXVMFKFDG2HWCD4MUOGEGUWJUOMZ5D2GI42BIQA
Это очень долго, и теперь мы достигаем ограничения в 260 символов MSBuild
:
C: \ Program Files (x86) \ Microsoft Visual Studio \ 2017 \Professional \ MSBuild \ 15.0 \ Bin \ Microsoft.Common.CurrentVersion.targets (2991,5): ошибка MSB3553: файл ресурсов "obj \ Release \ xx.aaaaaaaaaa.yyy.bbbbbb.dddddddddddd.yyyyyyy.ddres."имеет неверное имя.Метаданные элемента "% (FullPath)" нельзя применить к пути "obj \ Release \ xx.aaaaaaaaaa.yyy.bbbbbb.dddddddddddddd.yyyyyyy.vvv.dddddddddd.Resources.resources".Указанный путь, имя файла или оба являются слишком длинными.Полное имя файла должно быть не более 260 символов, а имя каталога должно быть не более 248 символов.[D: \ WS \ GHT-build_feature_pipelines-TMQ33LB5OQIQ5VXVMFKFDG2HWCD4MUOGEGUWJUOMZ5D2GI42BIQA \ Src \ BBBBBB \ DDDDDD \ DDDDDDDDDDDDDD \ YYYYYYY \ xx.aaaaaaaaaa.yyy.bbbbbb.dddddddddddddd.yyyyyyy.vvv \ xx.aaaaaaaaaa.yyy.bbbbbb.dddddddddddddd.yyyyyyy.vvv.csproj]
У нас так много случаев, когда длина велика, что это действительно большая работа по рефакторингу всего, поэтому я смотрю, как указать jenkins меньший путь?