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



我正在尝试将 NuGet 包发布到专用 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 请求,没有任何授权令牌。该请求以 401 结尾。

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

因此,在使用 dotnet nuget push 命令之前,您应该按照以下两个命令NuGet.config添加凭据和 API 密钥:

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

最新更新