Такое поле не найдено: field java.lang.String Ошибка sinput при запуске моего файла jenkinsfile - PullRequest
1 голос
/ 08 июня 2019

Получение Не найдено такое поле: field java.lang.String sinput error во время работы Jenkinsfile

Я разработал Jenkinsfile, который будет принимать пользовательский ввод и далее будет запускать команду на удаленной машине, принимающую пользовательский ввод.в качестве переменной

stage {

    stage("Interactive_Input") {
        steps {
            script {

                // Variables for input
                //def inputConfig apiinput
                //def inputTest apilog

                def apiinput


                // Get the input
                def userInput = input(
                        id: 'userInput', message: 'This is my project',
                        parameters: [

                                string(defaultValue: 'None',
                                        description: 'Enter the name of the service',
                                        name: 'sinput'),

                        ])

                // Save to variables. Default to empty string if not found.
                apiinput = userInput.sinput?:''


                // Echo to console
                //echo("IQA Sheet Path: ${inputConfig}")
                sh 'ssh king@1.2.3.4 "docker service logs ${apiinput} --raw"'
            }
        }
    }
}

}

1 Ответ

0 голосов
/ 08 июня 2019

Я думаю, что вы обращаетесь к своей переменной sinput неправильно.Ваш id: 'userInput' означает непосредственно переменную пользовательского ввода.Вы пытаетесь получить доступ к переменной, которая не существует, когда вы вызываете apiinput = userInput.sinput?:''.

Цитирование из источника 3:

Если указан только один параметр, его значение станет значением шага ввода.Если указано несколько параметров, возвращаемое значение будет отображаться в виде карты с именами параметров.Если параметры не запрашиваются, шаг ничего не возвращает, если утвержден.

У вас есть 1 параметр, и он становится значением шага ввода.Карта не создается.

apiinput = userInput?:'' должно исключить исключение.

Source1 Source2 Source3

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