NuGet вызывает Azure проблемы с конвейером - PullRequest
0 голосов
/ 28 января 2020

Не каждый раз, но довольно часто я получаю ##[error]The nuget command failed with exit code(1) and error(NU1102: Unable to find package MyPackage with version (>= 1.0.5) в моих Azure сборках конвейеров (разные пакеты и разные версии): Pipeline error

Пакет определенно существует, поскольку он только что был построен за пару минут go, и я вижу это в ленте артефактов: Artifact feed

Вот мой конвейер: Build Step 1 Build Step 2

Проект состоит из нескольких пакетов, поэтому это становится действительно неудобным. Если я попробую использовать разные агенты сборки, я в итоге получу один из них, но конвейеры, скорее всего, будут более сложными. Насколько я могу сказать (или предположить), Nuget кэширует индекс. json для канала. Единственные другие проблемы, которые я могу найти, связанные с этим, особенно происходят в местных условиях. Есть ли способ заставить Nuget правильно проверить, существуют ли пакеты?

Ответы [ 2 ]

0 голосов
/ 28 января 2020

1.Не уверен в истинной причине вашей проблемы, но если очистка кэша может помочь решить вашу проблему, вам нужно только включить эту опцию в Restore task.

enter image description here

2. Также иногда package not found error может быть связано с правами на фид в Devops. Go Артефакты => пользовательский канал => Настройки канала в правом углу:

enter image description here

Убедитесь, что ваша служба сборки имеет доступ к этому каналу.

0 голосов
/ 28 января 2020

NuGet кэширует, какие версии пакета доступны в каждом фиде в течение 30 минут, поэтому пакет был опубликован более поздним образом, и этот компьютер уже восстановил другую версию пакета в течение последних 30 минут. быть проблемой.

Вы можете запустить dotnet nuget locals http-cache --clear или nuget.exe locals http-cache -clear перед восстановлением, что приведет к удалению HTTP-кэша NuGet.

...