如何让teamcity在每次成功构建时运行.bat文件?

时间:2010-01-29 10:16:28

标签: sharepoint build-automation teamcity deployment

我有一个teamcity(4.something)安装,可以创建.wsp文件以便部署到sharepoint。目前我必须将wsp从build artifacts目录复制到我创建的一个小部署文件夹中。在文件夹中,我运行一个.bat,将新的.wsp部署到我们的测试服务器。 我可以采取哪些步骤来实现自动化?

将.bat复制到artifacts文件夹并更新路径等,或从artifacts文件夹复制到'deploy'文件夹并从那里运行.bat。

对于MSBuild等的错综复杂(或基础知识!)而言,我是初学者...所以我很感激握手!

2 个答案:

答案 0 :(得分:11)

最新版本的TeamCity ......

在构建定义中,您可以识别可以复制/压缩的工件。然后可以手动下载工件或从另一个构建(Artifact Dependency)引用工件。

您可以设置“构建配置”,直接从ci构建生成的工件进行部署。

  • 创建构建以执行部署
  • 构建步骤
    • 运行:带参数的可执行文件
    • 命令可执行文件:.bat文件(确保它是生成的ci构建工件的一部分)
    • 命令参数:补丁文件需要的任何参数
  • 依赖关系
    • 添加新工件依赖
    • 依赖于:选择要部署的ci构建
    • GetArtifacts来自:上次成功构建
    • 工件规则:+:** / *。*

因此,给定工件(如批处理文件)在CI构建中......您现在拥有“部署”构建。当您运行它(手动或设置构建触发器)时,它会将所有CI构建工件复制到它的工作目录(工件依赖项),然后运行批处理文件来进行部署。

很漂亮。

注意:只需确保运行TeamCity BuildAgent的帐户有权执行所有部署工作。

希望这对某人有所帮助,因为我需要一段时间来解决这个问题;)

答案 1 :(得分:1)

我通过创建一个nant任务完成了这个,然后让TeamCity执行nant任务。这应该是一种痛苦而非应有的痛苦。您应该可以使用MSBuild进行构建后事件。