【问题标题】:How can I have teamcity run a .bat file on each successful build?如何让 teamcity 在每次成功构建时运行 .bat 文件?
【发布时间】:2010-01-29 10:16:28
【问题描述】:

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

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

当谈到 MSBuild 等的复杂性(或基础知识!)时,我是一个新手......所以手握表示赞赏!

【问题讨论】:

    标签: sharepoint build-automation teamcity deployment


    【解决方案1】:

    在最新版本的 TeamCity 中...

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

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

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

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

    相当漂亮。

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

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

    【讨论】:

      【解决方案2】:

      我通过创建一个 nant 任务,然后让 TeamCity 执行该 nant 任务来完成此任务。这比它应该的更痛苦。您应该能够使用 MSBuild 执行与构建后事件相同的操作。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2010-09-06
        • 1970-01-01
        • 1970-01-01
        • 2010-12-11
        • 1970-01-01
        • 2022-12-14
        相关资源
        最近更新 更多