在CentOS上使用TeamCity从GitHub构建C#(Mono)解决方案

时间:2013-10-27 10:47:48

标签: mono centos teamcity

我正在尝试让TeamCity在CentOS上为我做自动构建,但是如果我创建一个'MSBuild'的跑步者类型,我会收到以下错误

Failed to start MSBuild.exe. Failed to find msbuild.exe at path: /usr/lib/mono/4.0/xbuild.exe

我尝试使用'Visual Studio(sln)'的跑步者类型将Visual Studio设置为2012并出现以下错误

No enabled compatible agents for this build configuration.

当我查看我的代理要求时,我看到:

Unmet requirements: DotNetFramework4.5_x86 exists

老实说,我不知道会出现什么问题。 Mono已经在这台机器上运行,因为它正在托管一个使用Mono构建的网站。有经验的人可以让我知道我做错了吗?

[编辑]

我刚刚尝试创建一个符号链接,其中xbuild实际存在于TeamCity所需的位置。

ln -s /usr/bin/xbuild /usr/lib/mono/4.0/xbuild.exe

我现在在Build日志中收到以下错误,所以我认为它不喜欢符号链接。

[MSBuild output] Cannot open assembly '/usr/lib/mono/4.0/xbuild.exe': File does not contain a valid CIL image.

1 个答案:

答案 0 :(得分:2)

我能够通过在构建代理上的buildAgent.properties文件中添加一个环境变量来解决这个问题。一旦找到该文件,就在“环境变量”部分添加类似的内容:

env.MSBuild=/usr/local/lib/mono/xbuild/12.0/bin/ 

我正在使用ubuntu执行此操作,因此路径可能与您要查找的路径不同。