【问题标题】:Adding internal NuGet server to TFS build server?将内部 NuGet 服务器添加到 TFS 构建服务器?
【发布时间】:2018-05-28 22:04:01
【问题描述】:

我们有一个私有的 NuGet 服务器,我的问题是 TFS 2017 构建不识别内部包的 NuGet 服务器,显然,没有指定 URL。我已经尝试将它放入 Nuget.config 并且它有效,但存在一些问题。

然而,我想做的是以某种方式将其添加到全局提要列表中。我没有在服务器上安装 NuGet,尽管 NuGet 还原是作为构建任务发生的,所以它存在于 c:_work_tasks\NuGetInstaller_333b11bd-d341-40d9-afcf-b32d5ce6f23b\0.2.21\ 等下,并且看不到任何会让我更改提要集。

顺便说一句,当我将包源添加到 nuget.config 时,它似乎只从该源下载并忽略了所有默认值,例如 nuget.org 等。

如何添加内部 nuget 服务器,以便我的所有构建本机都可以访问它?谢谢。

【问题讨论】:

  • 您使用的是 TFS 源(将 TFS 设置为私有 NuGet 服务器)还是任何其他私有 NuGet 服务器? :Get started with NuGet Package Management in VSTS and TFS
  • @Andy,你为什么要提供与 Azure 相关的链接?我问是因为我正在尝试将包添加到我们网络上的文件共享中。

标签: tfs nuget tfsbuild nuget-package-restore


【解决方案1】:

通常您只需将提要(同时添加nuget.org 源)添加到NuGet.config 文件,然后签入文件。

(如果您使用第三个私有 NuGet 服务器,那么您可以尝试使用Package Management in VSTS and TFS

例如

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <packageSources>
    <!-- remove any machine-wide sources with <clear/> -->
    <clear />
    <!-- add a VSTS feed -->
    <add key="MyGreatFeed" value="https://fabrikam.pkgs.visualstudio.com/DefaultCollection/_packaging/MyGreatFeed/nuget/v3/index.json" />
    <!-- also get packages from the NuGet Gallery -->
    <add key="nuget.org" value="https://www.nuget.org/api/v2/" />
  </packageSources>
  <activePackageSource>
    <add key="All" value="(Aggregate source)" />
  </activePackageSource>
</configuration>

对于这个问题:“它似乎只从那个来源下载并忽略了所有默认值,例如 nuget.org 等。”

确保您已正确设置 NuGet.config 文件并且未排除 nuget.org 源。

要在 Build 中恢复 NuGet 包,您可以按照以下文章中提到的步骤进行操作:

Restore Package Management NuGet packages in Team Build

  • 如果您已签入 NuGet.config,请选择 Feeds in my NuGet.config 并从您的存储库中选择文件。
  • 如果您使用单个 VSTS/TFS 供稿,请选择我在此处选择的供稿选项并从下拉列表中选择您的供稿。

【讨论】:

  • @Ryan Peters 你解决了这个问题吗?有更新吗?
【解决方案2】:

有点过时了,但我也在本地 TFS 中查看了一个关于如何集成其他本地 nuget 提要的解决方案。

  1. 导航至设置并选择“服务”

您现在应该会看到一个端点列表

  1. 点击“+ 添加新服务端点”并从下拉列表中选择“NuGet”

会打开一个对话框,您可以在其中输入本地 NuGet 服务器的信息

  1. 保存端点后,您现在应该能够在构建中选择 NuGet-Endpoint,当您添加 NuGet-Restore 构建步骤(在版本 2.* 中)和..

  2. 在构建步骤中选择“Feeds in my NuGet.config”下的“Feeds to use*” 现在应该会显示一个下拉菜单来选择“此帐户/集合之外的供稿的凭据”。在此下拉列表中,您可以选择您的 NuGet-Endpoint。

【讨论】:

    猜你喜欢
    • 2014-04-01
    • 2016-03-14
    • 1970-01-01
    • 1970-01-01
    • 2014-12-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-08-27
    相关资源
    最近更新 更多