我们有一个私有的NuGet服务器,我的问题是TFS 2017版本无法识别内部软件包的NuGet服务器,显然,没有指定URL。我已经尝试将它放在Nuget.config中并且它有效但有一些问题。
然而,我想以某种方式将其添加到全局供稿列表中。我没有在服务器上安装NuGet,虽然NuGet恢复正在作为构建任务发生,因此它存在于c:_work_tasks \ NuGetInstaller_333b11bd-d341-40d9-afcf-b32d5ce6f23b \ 0.2.21 \ etc下,并且看不到任何内容我会让我改变一组饲料。
BTW,当我向nuget.config添加一个包源时,似乎只能从该源下载并忽略所有默认值,例如nuget.org等。
如何添加内部nuget服务器以便我的所有构建本地都可以访问它?感谢。
答案 0 :(得分:2)
通常,您只需要将Feed(也添加nuget.org
来源)添加到NuGet.config
文件,然后签入该文件。
(如果您使用了第三个私有NuGet服务器,那么您可以尝试使用Package Management in VSTS and TFS)
e.g。
<?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,请选择我的NuGet.config中的Feed> ,然后从您的仓库中选择该文件。
- 如果您使用的是单个VSTS / TFS Feed,请选择我在此处选择的Feed 选项,然后从下拉列表中选择您的Feed。
答案 1 :(得分:0)
有点过时了,但我还研究了本地TFS中有关如何集成其他本地nuget提要的解决方案。
您现在应该看到端点列表
将打开一个对话框,您可以在其中输入本地NuGet服务器的信息
保存端点后,现在您应该可以在构建中选择NuGet-Endpoint,在添加NuGet-Restore构建步骤(在版本2. *中)和..
在构建步骤中,在“要使用的数据*”下选择“我的NuGet.config中的数据” 现在应显示一个下拉列表,以选择“此帐户/收藏集之外的feed的凭据”。在此下拉列表中,您可以选择NuGet-Endpoint。