在teamcity 6.5中创建工件时遇到了真正的问题(使用TFS& MSBuild作为buildrunner,如果它有任何可能性,它可能会像我发现的任何示例似乎使用SVN ...)。
只要我没有输入结帐规则,Build就可以运行。 如果我理解它,我需要设置一些工件,它们本身依赖于结账规则(?)。
我有两个相同的构建,除了它们被启动的方式。 一个是在办理登机手续时启动的 一个是从TC内手动启动的。此构建是测试构建
程序集版本号来自单个versioninfo.cs文件,该文件是解决方案中所有项目中的链接文件。此方法详述如下:http://www.codeproject.com/Articles/328977/The-Right-Way-to-Version-Your-Assemblies并保存版本号: [assembly:AssemblyFileVersion(“9.1.0.0”)]
最终,我无法将测试版本的输出复制到另一个位置。 就目前而言,构建的唯一输出是在teamcity数据目录中,例如: C:\ TeamCity的\ buildAgent \工作\ ceaaf65dc87ff856 \ PROJECT1 \ BIN \调试 C:\ TeamCity的\ buildAgent \工作\ ceaaf65dc87ff856 \ Project2的\ BIN \调试 等
我想将输出文件(exes和DLL)复制到输出文件夹,该文件夹上有构建版本号 为了论证,让我们说上面的版本号,这将是 C:\ BuildServer_Output \解决方案名称\ 9.1.0.0
目前我还无法创建实际执行任何操作的工件路径 - 即在任何地方复制任何内容。 例如,我有神器路径,但没有任何东西被放入C:\ BuildServer_TestBuilds - +:Accounts \ bin \ debug * => C:\ BuildServer_TestBuilds +:BackOffice \ bin \ debug * => C:\ BuildServer_TestBuilds
我没有得到任何工件(因此我的工件路径被忽略),因为我没有结帐规则?
任何帮助都将不胜感激。
答案 0 :(得分:1)
我非常确定工件和结帐规则是完全独立的。工件只是处理已构建的内容。结帐规则告诉teamcity如何对VCS中的更改做出反应并检查结果。
看起来您的工件路径以绝对路径开头。我总是发现使用带通配符的相对路径更容易。这样我就不用担心teamcity把构建放在哪里了。我们使用以下内容将所有dll和exes放到一个文件夹中
**\bin\Debug\*.*=>deploymentdir
我们的构建配置页面有一个工件链接,当我们打开它时,它会有像
这样的东西deploymentdir\common\bin\debug\common.dll
deploymentdir\common\bin\debug\common.pdb
deploymentdir\runner\bin\debug\runner.exe
在我们的其他一个版本中,我们使用一个msbuild脚本来展平我们的输出,然后再将其放入工件流程中。
我们确实使用结帐规则,但我们不必更改工件路径以适应它们。