推广所有构建以掌握Jenkins

时间:2014-07-31 16:17:37

标签: git jenkins continuous-integration bitbucket-server

我在项目中使用Jenkins for CI。现在,我有一个“Dev”构建,只要向任何分支提交,就会由Stash(git服务器)触发。

我正在尝试合并我的发布工作流程。这是计划:

  • Dev job使用Promoted Builds插件将所有构建推广到master
  • 发布工作由Dev
  • 的推广触发

但是,我似乎无法弄清楚如何根据其分支推广构建。我尝试过“立即根据构建参数进行宣传”并将GIT_BRANCH指定为origin/master。当我运行构建时,我echo %GIT_BRANCH%并在它应该的时候打印origin/master

我还尝试在构建脚本中添加字符串参数BRANCH,并在构建脚本中添加set BRANCH=%GIT_BRANCH%,以防它实际上需要是一个参数而不仅仅是一个环境变量。

仍然难倒。

2 个答案:

答案 0 :(得分:3)

终于明白了。添加了名为IS_RELEASE_CANDIDATE的String构建参数,其默认值为0。我正在使用“基于构建参数完成构建后立即提升”,条件是IS_RELEASE_CANDIDATE1

在我的构建步骤中,当字符串$GIT_BRANCHstash/master匹配时,我使用Conditional BuildStep Plugin添加了条件步骤。

如果匹配,我会使用EnvInject Plugin设置IS_RELEASE_CANDIDATE=1

答案 1 :(得分:1)

我能够通过使用Custom Groovy Script选项来完成此操作,该选项提供了一个build对象,您可以从中访问环境变量。此脚本仅允许在与origin/master分支匹配的构建上进行促销。

Screenshot of configuration