Дженкинс меняет пользовательский интерфейс параметров сборки в зависимости от условия - PullRequest
0 голосов
/ 27 апреля 2020

Я использую разделяемую библиотеку Jenkins для сборки своих заданий с параметрами сборки. По умолчанию параметры сборки являются текстовым полем, т.е. мы можем изменить значение, например, в следующем фрагменте кода мы можем изменить параметр сборки manifestId .

Теперь мне нужно добавить другой параметр, buildBranch , но это может быть либо редактируемое текстовое поле, либо не редактируемое. Когда в переменной branch_name (например, release /) имеется указанное значение c, этот параметр сборки не должен редактироваться, в противном случае он должен быть редактируемым, как и manifestId.

Я изучал реактивный эталонный параметр Jenkins Active-Choices-Plugin. Хотите знать, как поставить условие в блоке параметров. Буду признателен за любую оказанную помощь.

def call(HashMap pipelineParams = [:]) {
    String branch_name= params.buildBranch ?: BRANCH_NAME

    pipeline {
        parameters {
            string(defaultValue: "", description: 'ManifestId', name: 'manifestId', trim: true)
            //how to make it non-editable when we have specific value of branch_name, as defined above
             string(defaultValue: branch_name, description: 'buildBranch', name: 'buildBranch', trim: true)
        }
        agent { label 'miscslave' }
        stages {
            stage(){
                script{}
                script{}
            }
        }
...