将NuGet程序包从TeamCity发布到Azure DevOps工件

时间:2019-10-01 05:04:57

标签: azure-devops nuget teamcity

我正在尝试配置Azure Artifacts Credential Provider,以允许我连接到Azure DevOps并将NuGet程序包发布到工件提要。我已经在构建服务器上安装了凭据提供程序。但是,每次运行构建时,都会出现以下错误:

enter image description here

我应该将PAT传递给凭据提供程序,还是正在运行生成版本的帐户需要访问Azure DevOps,以便它可以生成凭据?我对这个文件的工作方式有点不清楚。我的TeamCity实例有些过时,所以也许我需要先进行升级。

2 个答案:

答案 0 :(得分:1)

请为您的构建配置添加NuGet Credentials Provider build feature。指定提要的URL(与在NuGet Publish构建步骤中所做的相同),有效的用户名+ PAT(而不是其中的密码)。

答案 1 :(得分:1)

已接受的答案似乎不再起作用。在Windows Server 2016上运行并使用.NET Core 2.2.105的TeamCity 2019.1.4上:

[push] WARNING: The credential plugin model used by 'C:\TeamCity\buildAgent\plugins\nuget-agent\bin\credential-provider\CredentialProvider.TeamCity.exe' is deprecated. Please contact the provider of the plugin for an alternative. More information about the recommended plugin model can be found at 'https://aka.ms/nuget-cross-platform-authentication-plugin'.
[17:18:31][push] Please provide credentials for: https://pkgs.dev.azure.com/org/project/_packaging/feed/nuget/v3/index.json
[17:18:31][push] Unable to load the service index for source https://pkgs.dev.azure.com/org/project/_packaging/feed/nuget/v3/index.json.
[17:18:31][push]   Response status code does not indicate success: 401 (Unauthorized).

如果我登录到服务器并设置非交互式使用环境变量,则可以从命令行手动安装和运行https://github.com/microsoft/artifacts-credprovider,但是在TeamCity Build作业的上下文中不能运行。 / p>

是否存在比可以处理将dotnet nuget推送到Azure Artifacts的身份验证更新的TeamCity运行程序?