【发布时间】:2015-06-23 16:09:54
【问题描述】:
我们目前正在使用 TeamCity Enterprise 9.0 进行持续部署流程;所以请想象以下场景,您将最新代码部署到 dev 分支,但是其中一个 nugget 包已从源代码中删除并且构建失败,QA 团队晚上进来发现构建已损坏并且环境已关闭用于检测。
所以我想知道是否有一种方法可以将 TeamCity 配置为在当前代码版本失败的情况下自动运行最后一次成功的构建,例如配置它以使其知道当前分支已损坏并因此返回上一个稳定状态。
谢谢,
【问题讨论】:
-
部署失败的构建是否有原因?为什么不将部署更改为不继续失败的构建。
-
完全 - 你为什么要部署一个损坏的构建!
-
你需要一个目标来回滚到一个已知的好版本
-
这实际上很奇怪,因为部署步骤是最后一步,它设置为“执行:如果所有先前的步骤都成功完成”,但我们仍然在开发环境中以失败的构建结束了它,所以我正在寻找一个故障转移操作,以确保不会发生这种情况。
-
我可以为您的特定需求提供解决方案,但出于兴趣,您是否有任何实际上不成功的 powershell 步骤(如果您查看构建日志而不仅仅是步骤状态) ?如果您可以导出构建日志并共享它(例如 dropcanvas),我可以查看一下以找出真正的问题。
标签: automation continuous-integration teamcity