azure-devops - 如何将私有 nuget 源的凭据添加到 Azure DevOps Pipelines?
问题描述
所以我有一个如下所示的 Azure DevOps Pipelines:
所以目前,使用 NuGet 4.6.2,我可以使用服务端点添加我的凭据/PAT。现在正在工作。
但是,我坚持使用 NuGet 4.6.2。如果我升级到最新的 NuGet (5.8),那么我会在 NuGet 还原期间收到错误:
Unable to find version '<x.y.z>' of package '<my.object.package>'.
C:\Users\VssAdministrator\.nuget\packages\:
Package '<my.object.package.x.y.z>' is not found on source 'C:\Users\VssAdministrator\.nuget\packages\'.
https://api.nuget.org/v3/index.json:
Package '<my.object.package.x.y.z>' is not found on source 'https://<private.nuget.url>: Failed to fetch results from V2 feed at '
Response status code does not indicate success: 401 (Unauthorized).)
我的猜测是,不知何故,我需要以不同的方式将凭据传递给私有 NuGet 提要(组织外部)——但不确定如何。或者我在这里遗漏了什么?
解决方案
根据错误消息,我们可以知道它正在尝试访问您的私人 nuget 提要并收到此 401(未经授权)错误。您似乎没有在nuget.config
文件中提供认证信息。
您可以尝试在您nuget.config
的以下添加认证信息:
<configuration>
<packageSources>
<add key="keyName" value="privateFeedUrl" />
</packageSources>
<activePackageSource>
<add key="All" value="(Aggregate source)" />
</activePackageSource>
<packageSourceCredentials>
<keyName>
<add key="Username" value="%USER_VARIABLE%" />
<add key="ClearTextPassword" value="%PAT%" />
</keyName>
</packageSourceCredentials>
</configuration>
您可以参考此线程了解更多详细信息。