【问题标题】:Authenticating to VSTS Package Management对 VSTS 包管理进行身份验证
【发布时间】:2018-01-29 23:11:21
【问题描述】:

documentation shows 通过 CredentialProvider(提示输入用户名/密码)或在 nuget.config 本身中保存用户名/PAT 的 v2 提要连接到 VSTS 包管理提要。

我希望能够在构建时在构建服务器(不是 VSTS 构建)上传递凭据。有没有办法做到这一点,而无需手动登录到构建服务器并配置 CredentialProvider,或者通过将 nuget.config 文件中的凭据提交到源代码管理?

这既可以用于使用包,也可以用于发布新包(即构建中的工件)。

【问题讨论】:

  • 我发现了一些对“VstsNuGetPush.exe”的引用,这可能有助于解决这个问题,但不确定这是可以下载的东西还是只是 VSTS/TFS 内部的东西。
  • 您是什么意思“我希望能够在构建服务器(而不是 VSTS 构建)上的构建时传递凭据”?您不想在 VSTS 构建过程中添加凭据吗?
  • 澄清一下,我没有使用 VSTS 构建。 “传入凭据”是指以某种方式在构建/运行时将用户名/密码/PAT 作为参数传递给我需要用来将包推送到提要的任何工具。

标签: nuget azure-devops azure-artifacts


【解决方案1】:

其实你可以一次将凭证添加到构建服务器,然后你可以自动连接到VSTS包源。

首次在构建服务器上构建,执行以下命令添加凭据和apikey:

nuget.exe sources Add -Name "feedname" -Source "https://account.pkgs.visualstudio.com/_packaging/feed/nuget/v3/index.json" -username name -password password
nuget.exe setapikey vstskey –source feedname

注意:对于添加的凭据,您可以使用 PAT 或备用凭据。

然后您可以通过仅输入源名称来连接 VSTS 提要。比如如果你想将一个nuget包推送到VSTS feed,只需使用命令:

nuget.exe push –source feedname –apikey vstskey path/to/name.nupkg

或者您可以将nuget.config 文件(哪些凭据)添加到源代码管理中,并且在使用nuget cli 时,只需指定您使用的nuget.config 文件的路径。

【讨论】:

  • 所以我最终这样做了,但使用了一个临时的 nuget.config(类似于我注意到 VSTS 任务的方式)
猜你喜欢
  • 2017-12-19
  • 2011-09-18
  • 1970-01-01
  • 2013-07-10
  • 2017-12-23
  • 1970-01-01
  • 2018-08-28
  • 1970-01-01
  • 2019-10-27
相关资源
最近更新 更多