nuget - TFS 构建 .net Core 与 nuget 还原错误结束
问题描述
在尝试在 tfs 上构建 .net Code 2.2 解决方案时,有一个 nuget restore 任务。它正在尝试连接到我们的内部提要。然后它失败了。在构建日志中,我们有:
错误:无法加载源http://internalSource/index.json的服务索引。[D:\dummy.csproj]
错误:安全包 [D:\dummy.csproj] 中没有可用的凭据
查看 TFS 生成的文件,它没有使用我们在解决方案中声明的凭证。我们的 nuget.config:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<packageRestore>
<!-- Allow NuGet to download missing packages -->
<add key="enabled" value="True" />
<add key="automatic" value="True" />
</packageRestore>
<packageSources>
<clear />
<add key="PackageSTN" value="http://internal/index.json" />
</packageSources>
<activePackageSource>
<add key="All" value="(Aggregate source)" />
</activePackageSource>
<packageSourceCredentials>
<PackageSTN>
<add key="Username" value="user" />
<add key="Password" value="pwd" />
</PackageSTN>
</packageSourceCredentials>
</configuration>
TFS 上的构建给了我们:
<configuration>
<packageRestore>
<add key="enabled" value="True"/>
<add key="automatic" value="True"/>
</packageRestore>
<packageSources>
<clear/>
<add key="PackageSTN" value="http://internal/index.json"/></packageSources>
<activePackageSource>
<add key="All" value="(Aggregate source)"/>
</activePackageSource>
<packageSourceCredentials>
<PackageSTN>
<add key="Username" value="VssSessionToken"/>
<add key="ClearTextPassword" value="Too Big to be display"/>
</PackageSTN>
</packageSourceCredentials>
</configuration>
似乎它正在尝试使用某些VssSessionToken
TFS 帐户登录。
此外,我们将服务器上的 %APPDATA% nuget.config 替换为带有我们凭证的那个,以防它查看内部,也没有运气。
解决方案
TFS 构建 .net Core 与 nuget 还原错误结束
众所周知,当我们选择选项时Feeds in my NuGet.config
,我们还需要提供Credentials for feeds outside this account/collection
:
如果我们使用从CredentialProvider.VSS.exe
NuGet 连接窗口的“个人访问令牌”字段中获得的令牌,我们可能会遇到像您这样的问题。我们从中获得的令牌CredentialProvider.VSS.exe
是一个短暂的令牌,您可以将其替换为 PAT(个人访问令牌)以检查它是否适合您。
检查此线程以获取更多详细信息。
此外,如果您使用的是旧的 nuget.exe,您可以使用该任务NuGet Tool Installer
对其进行更新。
如果以上内容对您没有帮助,请分享您关于 nuget 恢复任务的构建定义以及如何为该帐户/集合之外的提要添加凭据的步骤。
希望这可以帮助。
推荐阅读
- python - 从 pdf 报告中提取财务报表
- flutter - 扑。ShaderMask 无法从本地容器中获取对齐
- php - 我想将 html 苍蝇与 php 文件连接起来
- c# - 从浏览器中的地址行执行时获取 415 不受支持的媒体类型,提供 JSON 作为 .NET Core 3 中路由的参数
- python - 如果满足条件,嵌套列表中的简单元素减法?
- javascript - 如何在 json.message 对象中显示多个图像?
- chapel - 尝试使用 forall 循环对矩阵中的所有元素求和时遇到错误
- c# - 如何使用 lambda 缩短 if without else 语句?
- javascript - 如何将作为字符串导入的 png 注入 div 标签?
- python - groupby 之后的使用条件