#msbuild #azure-devops #continuous-integration #libman
#msbuild #azure-devops #непрерывная интеграция #libman
Вопрос:
Я настроил непрерывную интеграцию в Azure DevOps, но я продолжаю периодически получать проблему, из-за которой libman не удается загрузить ресурс вот несколько примеров:
##[error]libman.json(0,0): Error LIB010: Failed to download resource from "http://unpkg.com/devextreme@18.2.6/dist/css/icons/dxiconsmaterial.woff2"
##[error]libman.json(0,0): Error LIB010: Failed to download resource from "http://unpkg.com/globalize@1.4.2/dist/globalize-runtime/date.js"
##[error]libman.json(0,0): Error LIB010: Failed to download resource from "http://unpkg.com/cropperjs@2.0.0-alpha/src/js/preview.js"
Ошибка всегда возникает из-за другого пакета, поэтому я предполагаю, что это проблема с таймаутом (либо слишком медленно, либо я злоупотребляю этим — не уверен).
Вот фактическое сообщение об исключении:
exception was thrown --- [d:a1sMyAppPortalMyAppPortal.csproj]
C:UsersVssAdministrator.nugetpackagesmicrosoft.web.librarymanager.build1.0.172buildMicrosoft.Web.LibraryManager.Build.targets(35,9): error : at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) [d:a1sMyAppPortalMyAppPortal.csproj]
C:UsersVssAdministrator.nugetpackagesmicrosoft.web.librarymanager.build1.0.172buildMicrosoft.Web.LibraryManager.Build.targets(35,9): error : at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) [d:a1sMyAppPortalMyAppPortal.csproj]
C:UsersVssAdministrator.nugetpackagesmicrosoft.web.librarymanager.build1.0.172buildMicrosoft.Web.LibraryManager.Build.targets(35,9): error : at Microsoft.Web.LibraryManager.CacheService.<RefreshCacheAsync>d__9.MoveNext() [d:a1sMyAppPortalMyAppPortal.csproj]
C:UsersVssAdministrator.nugetpackagesmicrosoft.web.librarymanager.build1.0.172buildMicrosoft.Web.LibraryManager.Build.targets(35,9): error : --- End of stack trace from previous location where exception was thrown --- [d:a1sMyAppPortalMyAppPortal.csproj]
C:UsersVssAdministrator.nugetpackagesmicrosoft.web.librarymanager.build1.0.172buildMicrosoft.Web.LibraryManager.Build.targets(35,9): error : at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) [d:a1sMyAppPortalMyAppPortal.csproj]
C:UsersVssAdministrator.nugetpackagesmicrosoft.web.librarymanager.build1.0.172buildMicrosoft.Web.LibraryManager.Build.targets(35,9): error : at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) [d:a1sMyAppPortalMyAppPortal.csproj]
C:UsersVssAdministrator.nugetpackagesmicrosoft.web.librarymanager.build1.0.172buildMicrosoft.Web.LibraryManager.Build.targets(35,9): error : at Microsoft.Web.LibraryManager.Providers.Unpkg.UnpkgProvider.<RefreshCacheAsync>d__22.MoveNext() [d:a1sMyAppPortalMyAppPortal.csproj]
[error]C:UsersVssAdministrator.nugetpackagesmicrosoft.web.librarymanager.build1.0.172buildMicrosoft.Web.LibraryManager.Build.targets(35,9): Error : Microsoft.Web.LibraryManager.Contracts.ResourceDownloadException: Failed to download resource from "http://unpkg.com/knockout@3.4.0/package.json"
at Microsoft.Web.LibraryManager.WebRequestHandler.<GetStreamAsync>d__5.MoveNext()
Как я могу устранить эту проблему? Есть ли способ кэширования и повторного использования загруженных пакетов в DevOps так же, как это делает VS при запуске сборки?
Ответ №1:
Существует обновленная версия пакета LibraryManager, которая несколько раз повторяет попытки загрузки. Установите последнюю версию и посмотрите, поможет ли это решить проблему.
Комментарии:
1. Хотя технически это правильное решение, которое я внедрил, и оно значительно улучшило мои успехи в сборке, так что спасибо. Я также заметил, что в некоторых случаях продолжительность моей сборки увеличилась с 10 до 50 минут — теперь мне приходится платить за дополнительные агенты сборки! 🙁