2016-05-18 2 views

ответ

0

Я пробовал это сам недавно с небольшим успехом. Кажется, проблема в этом. Согласно documentation for class FileParameterValue есть конструктор, который принимает java.io.File так:

@DataBoundConstructor 
FileParameterValue(String name, 
        org.apache.commons.fileupload.FileItem file) 

Существует еще один которым ожидает FileItem так:

FileParameterValue(String name, 
        File file, 
        String originalFileName) 

Но так как только бывший помечается @DataBoundConstructor даже когда это Я пытаюсь использовать последний в скрипте:

file = new File(pwd(), 'test.txt'); 
build(
    job: 'jobB', 
    parameters: [ 
     [$class: "FileParameterValue", name: "TEST_FILE", file: file, originalFileName: 'test.txt'] 
    ] 
) 

Заметим, что это requi Рез утверждения сценария инстанцировании java.io.File

... Я получаю следующее сообщение об ошибке:

java.lang.ClassCastException: hudson.model.FileParameterValue.file expects interface org.apache.commons.fileupload.FileItem but received class java.io.File 

Я понимаю, что только файл загружен пользователем в качестве интерактивного ввода среды выполнения обеспечивает объект типа org.apache.commons.fileupload.FileItem так в конец я прибегал к archiving the file в первом задании, а unarchiving - в работе вниз по течению, и обошел эту проблему. Конечно, это не идеально, но если вы в пробке, это самый быстрый способ разобраться.

0

Вы не можете. Вот жуккинская ошибка. Обновите эту тему после исправления ошибки. Тем временем войдите в систему и проголосуйте за эту проблему и попросите их добавить документацию для параметров задания сборки трубопровода.

https://issues.jenkins-ci.org/browse/JENKINS-27413

Связанное отсюда: http://jenkins-ci.361315.n4.nabble.com/pipeline-build-job-with-FileParameterValue-td4861199.html

Вот документация для различных типов параметров (ссылка на FileParameterValue)

http://javadoc.jenkins.io/hudson/model/FileParameterValue.html

0

попытаться передать экземпляр FileParameterValue параметрам (он работал для меня):

import hudson.model.* 

def param_file = new File("path/to/file") 

build job: 'otherproject', parameters: [new FileParameterValue('file_param_name', param_file, 'original_file_name')], wait: false 
Смежные вопросы