使用TeamCity创建压缩文件和版本控制

时间:2013-12-05 12:02:22

标签: tfs teamcity

我正在使用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\**\*.* => projAproj2\**\*.* => 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。

1 个答案:

答案 0 :(得分:5)

在第二步中,您需要更多地过滤文件,因为您正在抓取项目根目录下的所有内容。

最简单的方法是将bin文件夹定位,所以也许......

proj1\**\bin\**\*.* => projA.zip

另一种是在构建配置的末尾添加一个新的自定义命令构建步骤,该步骤处理压缩文件并将它们放在该构建目录的顶部。

然后,您只需在Artifacts字段中指定zip名称,即可从Team City下载。或者,在自定义命令中,继续将压缩的工件部署到网络共享。