我正在使用TFS 2010和TeamCity 8.它是一个点网解决方案。
我需要三件事。
1-大会应该像这样:4.3.[tfs revision number].[counter]
。
(即汇编文件版本和汇编产品版本。)
2-解决方案结构如下所示:
Root folder -> solution.sln
Root folder -> proj1 -> proj1.proj
Root folder -> proj2 -> proj2.prj
Root folder -> several other projects
请注意,proj1是一个asp.net Web应用程序,proj2是一个wcf服务。
我想在服务器\\myserver\teamcityartefact\proj1.zip
和\\myserver\teamcityartefact\proj2.zip
上创建两个zip文件。
3-我还想确保使用发布配置来构建文物。
您可以推荐一些彻底的演练吗?
设置: 构建步骤设置为:运行器类型:Visual Studio(sln)。解决方案文件路径:solution.sln。 Visual Studio:Microsoft Visual Studio 2013.目标:清理;重建;发布;配置:发布。
到目前为止我尝试了什么:
一个。工件路径:*.* => \\myserver\teamcityartefact\proj1.zip
但是这会在zip文件中创建四个文件。 solution.sln,solution.sln.metaproj,solution.sln.metaproj.tmp和solution.vssscc。
湾工件路径:proj1\**\*.* => projA
和proj2\**\*.* => projB
返回项目中的所有文件。这些不是预编译的已发布文件。
构建步骤设置为:运行器类型:Visual Studio(sln)。解决方案文件路径:solution.sln。 Visual Studio:Microsoft Visual Studio 2013.目标:清理;重建;发布;配置:发布。
℃。 proj1 ** \ bin ***。* => projA.zip返回bin文件夹的内容。它是一个asp.net应用程序。
d。我确信没有使用发布配置,因为webconfig没有被转换。
e。目前bin文件夹中程序集的内部版本号格式为1.0.0.0。
答案 0 :(得分:5)
在第二步中,您需要更多地过滤文件,因为您正在抓取项目根目录下的所有内容。
最简单的方法是将bin文件夹定位,所以也许......
proj1\**\bin\**\*.* => projA.zip
另一种是在构建配置的末尾添加一个新的自定义命令构建步骤,该步骤处理压缩文件并将它们放在该构建目录的顶部。
然后,您只需在Artifacts字段中指定zip名称,即可从Team City下载。或者,在自定义命令中,继续将压缩的工件部署到网络共享。