Как правильно вызвать функцию в декларативном файле Jenkins - PullRequest
1 голос
/ 03 февраля 2020

Добрый день!

Я хотел бы вызвать функцию, которая устанавливает параметр выбора со списком папок в ветке. Я получаю нулевое значение в конце.

Мой файл Дженкинса выглядит следующим образом:

void findCollectionDirs() {
    directories = sh (
        script: "find . -path './[^.]*/*/*' -prune -type d",
        returnStdout: true
    )
    return directories
}
def directories

pipeline () {
    agent {
        label 'slave'
    }
    triggers {
        cron(cron_string)
    }
    parameters {
           choice(choices: "\n" + directories, description: 'Please select a directory', name: 'directory')
     }

    stages {
        stage ("Checkout scm") {
              steps {
                  deleteDir()
                  checkout scm
                  //sh 'directories = findCollectionDirs()'
                  findCollectionDirs()
            }
        }

Я попытался вызвать его, как показано ниже:

sh 'directories = findCollectionDirs()' или, findCollectionDirs() или directories.findCollectionDirs()

но значение все еще null.

Может кто-нибудь помочь мне правильно вызвать функцию, чтобы я получил правильные значения в параметре выбора.

Заранее спасибо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...