Jenkins Multibranch Pipelines - 在分支中配置属性?

时间:2016-12-15 09:36:09

标签: git jenkins build branch jenkins-pipeline

我们已经使用Jenkins Multibranch Pipeline Plugin成功建立了一个构建管道,它在大多数时候都很有用,但是我们遇到了这个问题:Jenkinsfile包含一组属性,这些也是显示在UI中,但如何为各个分支设置默认值?

这是我们的Jenkinsfile

中属性定义的样子
properties([
    parameters([
        string(defaultValue: 'somevalue', description: 'Some description', name: 'SOME_VALUE'),
        string(defaultValue: 'asdfasdfasdfasdfdasdasdasdasd...', description: 'Client ID', name: 'TEST_CLIENT_ID'),
        // ... more properties
        string(defaultValue: '', description: 'Enter non-empty value to skip tests', name: 'SKIP_TESTS'),
    ]), 
    [$class: 'RebuildSettings', autoRebuild: true, rebuildDisabled: false],
    pipelineTriggers([])
])

我为每个分支构建管道都有一个“显示配置”(管道是自动生成的),我可以在进行“使用参数构建”时输入值,但我似乎无法保存分支默认值?根本就没有“保存”按钮。

我们错误配置了Jenkins,还是在其他地方这样做?我想要实现的是能够在每个分支的基础上定义属性的默认值。

已安装的版本

  • Jenkins版本:2.19.4
  • Multibranch Pipeline Plugin版本:2.9.2

1 个答案:

答案 0 :(得分:1)

您可以将表单与双引号字符串

一起使用
string(defaultValue: "branch-${env.GIT_BRANCH}", description: 'Some description', name: 'SOME_VALUE')

设置参数的默认值(如您在问题中所述)

受到'属性'的限制。 step在一个构建中执行,它设置在下一个构建中出现的参数默认值。这是因为参数条目是在Jenkinsfile可用之前完成的。