时间:2010-03-26 08:03:45

标签: svn continuous-integration bamboo

想象一下,Bamboo中有一个项目有两个构建计划:分段部署(SD)和生产部署(PD)。构建 SD 检查最新的源,构建它们并将网站部署到临时服务器。目前, PD 完全相同,即将最新版本的网站部署到生产服务器。显然,这不是很好:我希望能够部署先前部署在登台服务器上的网站的相同版本,而不是最新版本。

举例说明:假设我们在SVN回购中处于r101。单击“ Build SD ”会将网站版本(例如2.1.0.101)部署到登台服务器。现在我们提交了一个重大变化,最终在r102。现在我想部署到生产服务器。如果我点击“ Build PD ”,Bamboo会很高兴检查r102并构建它,从而导致版本2.1.0.102被部署到生产服务器。

但是,我希望它能够构建和部署之前在 SD 计划中构建的版本(即2.1.0.101)。

当然我可以让 SD 计划将最新成功的版本标记为tags/builds/latest,但我宁愿让Bamboo自己处理它。

2 个答案:

答案 0 :(得分:5)

从构建命令中,您可以指定要与选项custom.svn.revision.number一起使用的修订。因此,对于 PD 计划的配置,它将类似于-Dcustom.svn.revision.number=101

注意:您需要Bamboo v1.1或更高版本。

答案 1 :(得分:1)

我最终做的是使用一个众所周知的标记(例如,`/ tags / project-latest')标记每个成功的登台部署,然后从该标记构建生产版本。