nuget - 使用 .NET CLI 将 NuGet 包推送到 VSTS

标签 nuget dotnet-cli azure-artifacts

我正在尝试将 NuGet 包发布到私有(private) VSTS 源。我希望使用 .NET CLI 来实现这一目标,而不创建或修改 nuget.config 文件。

我尝试过:

dotnet nuget push <PackageName> --source https://XXX.pkgs.visualstudio.com/_packaging/YYY/nuget/v3/index.json --api-key <VSTS UserName>:<PersonalAccessToken>

我得到:

error: Unable to load the service index for source https://XXX.pkgs.visualstudio.com/_packaging/YYY/nuget/v3/index.json.
error: Response status code does not indicate success: 401 (Unauthorized).

我可以在 Fiddler 中看到 .NET CLI 仅向 https://XXX.pkgs.visualstudio.com/_packaging/YYY/nuget/v3/index.json 发送 GET 请求,而没有任何请求授权 token 。该请求以 401 结束。

最佳答案

应将 NuGet 包凭据和 API key 添加到 NuGet.config 文件中。

因此,在使用 dotnet nuget push 命令之前,您应该在 NuGet.config 中添加凭据和 API key ,如下两个命令:

nuget sources Add -Name "mysource" -Source "https://XXX.pkgs.visualstudio.com/_packaging/YYY/nuget/v3/index.json" -username name -password PAT
nuget setapikey mykey -source mysource

然后通过dotnet nuget push命令推送NuGet包:

dotnet nuget push packagename.nupkg --source mysource --api-key mykey

关于nuget - 使用 .NET CLI 将 NuGet 包推送到 VSTS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48068329/

相关文章:

entity-framework-4 - Entity Framework 4.1 和 SQL Compact 所需的程序集是什么?

azure-artifacts - Azure 工件中通用包的直接下载 URL

azure - 如何从工件 UI 下载通用工件

npm - Azure 工件私有(private) npm 源身份验证失败

directory - 指定一个目录作为包源

asp.net-mvc - Nuget Update-Package 错误地更新程序集绑定(bind)重定向

c# - 在 nuget 包中添加第三方 COM 引用

asp.net-core - 更新 Mac OSX 中的 dotnet cli

visual-studio - `dotnet sln add` 错误的项目类型 GUID