我有一个项目,而我的经纪人确实安装了nuget - 不起诉我做什么wwong
12:01:14.195 [go] Start to build DemoApp/20/second/1/secondJob on vivians-mbp-2.delta.rl.delta.com [/Users/vivianaranha/Library/Application Support/Go Agent]
12:01:14.195 [go] Current job status: passed.
12:01:14.195 [go] Start to execute task: <exec command="nuget restore packages.config -PackagesDirectory ..\..\packages" workingdir="EMApp\EMApp\EMApp.iOS" />.
12:01:14.199 Error happened while attempting to execute 'nuget restore packages.config -PackagesDirectory ..\..\packages'.
Please make sure [nuget restore packages.config -PackagesDirectory ..\..\packages] can be executed on this agent.
12:01:14.199 [Debug Information] Environment variable PATH: /usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Library/Frameworks/Mono.framework/Versions/Current/Commands:/usr/local/bin
12:01:14.206 [go] Current job status: failed.
答案 0 :(得分:1)
您是否尝试将构建详细信息设置为更详细?另外,从我这样做的时候,我的构建使用了源代码管理中保存的nuget.exe,而不是构建代理
答案 1 :(得分:0)
你在GoCD 期待exec
任务成为shell执行时犯了一个常见的错误。
通过该构建日志,我可以判断您在xml中的配置是
<exec command="nuget restore packages.config -PackagesDirectory ..\..\packages" workingdir="EMApp\EMApp\EMApp.iOS">
</exec>
这意味着GoCD将尝试执行路径为nuget restore packages.config -PackagesDirectory ..\..\packages
的文件,该文件不存在。
GoCD exec
任务要求您明确区分流程可执行文件和所有参数。所以上面的nuget示例必须像这样配置:
<exec command="nuget" workingdir="EMApp\EMApp\EMApp.iOS">
<arg>restore</arg>
<arg>packages.config</arg>
<arg>-PackagesDirectory</arg>
<arg>..\..\packages</arg>
</exec>
有关任务设置的更多提示:
nuget.exe
不在路径中,则您需要配置完整的文件路径,例如command="C:\nuget\nuget.exe"
在mac上你需要用mono运行nuget。所以流程可执行文件是mono
:
<exec command="mono" workingdir="EMApp\EMApp\EMApp.iOS">
<arg>/path/to/nuget</arg>
<arg>restore</arg>
<arg>packages.config</arg>
<arg>-PackagesDirectory</arg>
<arg>..\..\packages</arg>
</exec>