我怎样才能在jenkins上继续部署,但只有当特定分支被推送到时?

时间:2012-01-26 03:27:22

标签: continuous-integration jenkins continuous-deployment

我读了一篇描述jenkins持续部署的文章:

  1. 创建一个运行测试的“测试”作业。
  2. 创建部署应用的“部署”作业。
  3. 让'test'作业在成功构建时触发'deploy'。
  4. 我能做到的就好了。但是,我现在有一个通用的'测试'工作,我正在推动任何分支的运行测试。如果我推进'生产'分支,有没有办法让它只触发'部署'工作?

    否则,我总是可以添加第二个“测试生产”作业,该作业仅在我推向生产时触发,并且之后触发部署......但这不是我想要做的。

1 个答案:

答案 0 :(得分:0)

另一种设置是使用rundeck进行部署。

jenkins plugin具有将根据SCM提交消息触发部署的功能:

  

“tag”字段用于在RunDeck上执行“按需”作业调度:如果该值不为空,我们将检查SCM changelog(=提交消息)是否包含给定标记,并且仅计划如果存在,则执行作业。例如,您可以将值设置为“#deploy”。请注意,如果此值为空,我们将始终安排作业执行。

因此,您可以配置rundeck以在每次成功部署后触发Jenkins测试。并使用代码中的提交消息控制这些部署。