无法从私有Team City Nuget Server运行Nuget Package Restore

时间:2014-07-02 15:27:17

标签: teamcity nuget

当前讨论主题: http://devnet.jetbrains.com/message/5519081#5519081

错误报告:http://youtrack.jetbrains.com/issue/TW-37148

错误:无法在非交互模式下提示输入。

需要注意的一点是,凭据提示会在每个包下载时触发​​,而不是在开始时触发。我认为这可能是Team City调用NuGet的方式中的一个错误,但我不确定。

我有" NuGet Feed凭证"已配置构建功能,已配置基本身份验证,并且我已在Firefox中运行源并获取要在代理计算机上显示的程序包列表(需要凭据)。

我的构建日志:https://gist.github.com/tonyeung/517597ca2312dad85f62

5 个答案:

答案 0 :(得分:3)

以下是可能对您有所帮助的解决方法,尽管我的印象是NuGet Feed Credentials构建功能旨在解决问题。我在没有访客访问权限的内部TeamCity NuGet Feed中遇到了类似的问题(在此示例中称为 Local )。

初始构建步骤(命令行 - 自定义脚本)

del /F %env.APPDATA%\NuGet\NuGet.Config
%teamcity.agent.tools.dir%\NuGet.CommandLine.DEFAULT.nupkg\tools\nuget.exe sources add -name Local -source %env.NuGetFeed%
%teamcity.agent.tools.dir%\NuGet.CommandLine.DEFAULT.nupkg\tools\nuget.exe sources update -Name Local -User %env.BuildServiceUser% -pass %env.BuildServicePassword%

正如我所说,它是一种解决方法,但如果使用模板则不需要太多维护。希望它可以让你起作用。

答案 1 :(得分:2)

我知道这是一个老问题,但我最近在TeamCity 9.1.7中遇到过这个问题。

就我而言,问题是Server URL上的Administration > Global Settings上有一个尾随斜杠。删除该斜杠使身份验证正常工作。

答案 2 :(得分:1)

解决

  

http://localhost:80/httpAuth/app/nuget/v1/FeedService.svc:来自&{39; http://localhost/httpAuth/app/nuget/v1/FeedService.svc /包的V2 Feed(Id =' ***',Version =' 1.0.0&#39 ;)'返回了意外的状态代码' 401 Unauthorized'。

问题我做了:

  1. 创建本地管理员帐户

    net user tcbagent password123 /add
    net localgroup administrators tcbagent /add
    
  2. 附加"登录为服务"权限(使用Carbon PS助手)

    Grant-CAPrivilege -Identity tcbagent "SeServiceLogonRight"
    
  3. 在TeamCity中创建帐户
  4. 使用目标环境

    运行cmd
    runas /user:tcbagent cmd
    
  5. 使用凭据添加nuget来源

    nuget sources add -name local -source http://localhost/httpAuth/app/nuget/v1/FeedService.svc -UserName tcbagent -Password password123 
    
    无论你需要什么

    localhost

  6. 检查你的 teamcity-build.log 文件,得到这样的结果:

    Starting NuGet.exe 3.5.0.1284 from C:\TeamCity\buildAgent\tools\NuGet.CommandLine.DEFAULT\tools\NuGet.exe
    ...
    Restoring NuGet package xxxx.
    ...
    Using credentials from config. UserName: tcbagent
    

    TeamCity v9.1.7,NuGet v3.5.0-beta

    我花了2天时间来解决它,因为我对TeamCity和CI很新。 希望它有所帮助。

答案 3 :(得分:0)

似乎与https://nuget.codeplex.com/workitem/4172类似的问题。

您可以尝试问题说明底部的解决方法吗?

答案 4 :(得分:0)

对于TeamCity 8.1.2(版本29993),我通过在TeamCity管理面板上安装Nuget v.2.8.0解决了这个问题(我有v.2.8.2)。然后我添加了“Nuget Install”构建步骤并设置了NuGet Feed Credentials构建功能。 也许,如果您要更新TeamCity,它也可以解决这个问题。