想象一下,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自己处理它。
答案 0 :(得分:5)
从构建命令中,您可以指定要与选项custom.svn.revision.number
一起使用的修订。因此,对于 PD 计划的配置,它将类似于-Dcustom.svn.revision.number=101
。
注意:您需要Bamboo v1.1或更高版本。
答案 1 :(得分:1)
我最终做的是使用一个众所周知的标记(例如,`/ tags / project-latest')标记每个成功的登台部署,然后从该标记构建生产版本。