【问题标题】:How can I get VSTS working with private nuget repos which require credentials?如何让 VSTS 与需要凭据的私有 nuget 存储库一起工作?
【发布时间】:2017-11-16 16:21:04
【问题描述】:

我正在尝试建立 CI/CD 系统,公司选择了 Visual Studio Team Services。

一切都很顺利,直到我注意到我的构建在这里失败:

错误: d:\a_tasks\NuGetInstaller_333b11bd-d341-40d9-afcf-b32d5ce6f23b\0.2.31\node_modules\nuget-task-common\NuGet\3.3.0\NuGet.exe 失败,返回码:1

安装包失败

该软件项目使用从私有 Telerik nuget 存储库检索到的 Telerik DLL - 这需要凭据才能访问。

现在显然必须有一种方法可以在“Nuget Restore”构建步骤中告诉 VSTS,但除了创建我们自己的托管公司 Repo 并告诉 VSTS 之外,我在网上找不到任何东西 - 这没有帮助,因为我不想托管 Telerik 自己的 DLL。

有什么方法可以做到这一点,或者我应该搬到 TeamCity 吗?

【问题讨论】:

    标签: telerik continuous-integration nuget azure-devops azure-pipelines


    【解决方案1】:

    NuGet 任务的最新版本 (2.*) 支持私有 NuGet 源并为其指定凭据(参见屏幕截图)。您只需利用 NuGet 配置文件即可实现此目的。阅读Configure NuGet behavior了解更多详情。

    另请注意,如果您使用托管代理,则您的私有 NuGet 存储库必须可公开访问。否则,您将需要在与 NuGet 服务器相同的网络上运行构建代理。

    【讨论】:

    • 如上面评论中提到的:好的,所以我按照上述步骤并设法将 Telerik 存储库添加到我的 VSTS 构建定义中,但是在排队构建时它仍然无法检索 Telerik 包 - 控制台声明只使用了一个提要:“使用的提要:api.nuget.org/v3/index.json”有什么想法吗?我觉得我现在很接近了!
    • 您是否创建了 NuGet 配置文件?
    • 在我将实际的 nuget 和 telerik 存储库添加到我的配置后工作,谢谢
    【解决方案2】:

    您似乎正在使用现在已弃用的 Nuget 安装程序任务。

    您可以使用 NuGet 任务,详细设置如下:

    选择恢复命令 -> 点击新建从外部提要添加凭据 -> 在新窗口中 -> 选择基本身份验证 -> 输入提要 URL、用户名和密码 -> 验证连接成功 -> 确定。

    保存构建定义并再次排队,现在 NuGet 任务应该可以成功下载 nuget 包。

    【讨论】:

    • 非常感谢,您显示的屏幕截图与我正在寻找的完全一样,我现在就试试,然后回复您!
    • 好的,所以我按照上述步骤并设法将 Telerik 存储库添加到我的 VSTS 构建定义中,但是在将构建排队时,它仍然无法检索 Telerik 包 - 控制台指出只使用了一个提要但是:“使用的提要:api.nuget.org/v3/index.json
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-09-12
    • 2018-03-29
    • 2012-04-13
    • 2015-03-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多