2017-02-02 12 views
0

Я новичок в groovy и наткнулся на плагин dsl Jenkins job, который соответствует моим требованиям.Работа dsl для тиражирования существующих Jenkins Job

Мое требование повторить существующий Jenkins задание (например, А) и создать новые рабочие места B с единственным изменением в качестве подрывной URL (в подрывной плагин) в Б. Работа

Я попробовал разработку основной job-dsl, как показано ниже, и развиваться дальше оттуда, что соответствует моему вышеупомянутому требованию.

job('ci') { 
    description 'Build and test the app.' 
    scm { 
     svn('https://svn.mydomain.com/repo/project1/trunk') 
    } 
} 

Ниже вопрос Im облицовочный, я попытался выяснить ответ без какой-либо удачи, и был бы очень признателен за любую помощь.

Using dsl from string 
ERROR: Build step failed with exception 
groovy.lang.MissingMethodException: No signature of method: Script1.job() is applicable for argument types: (java.lang.String, Script1$_run_closure1) values: [PROJ-unit-tests, [email protected]] 
Possible solutions: job(groovy.lang.Closure), run(), run(), any(), wait(), dump() 
+0

@ daspilker: Не могли бы вы предложить мне некоторые идеи здесь. Благодарю. –

+0

Ваш DSL-скрипт кажется правильным. Он работает на [игровой площадке] (http://job-dsl.herokuapp.com/) без проблем. Используете ли вы шаг сборки «Обработка задания DSL»? Вам нужно предоставить больше контекста. – daspilker

+0

@ daspilker: Да, в Jenkins, я использую - «Process Job DSLs» построить шаг и только что ввел свой пример кода и попытался построить работу. но тот же вопрос: 'Строительство в рабочем пространстве D: \ Дженкинс \ рабочее место \ Seed_Proj Использования DSL из строки ОШИБКИ: Постройте шаг потерпел неудачу с исключением groovy.lang.MissingMethodException: Нет подписи методы: Script1.freeStyleJob() является применимо для типов аргументов: (java.lang.String) значения: [SimpleJob] \t в javaposse.jobdsl.dsl.DslScriptLoader.parseScript (DslScriptLoader.java:72) \t в javaposse.jobdsl.dsl.DslScriptLoader.runDsl (DslScriptLoader .java: 39) ' –

ответ

2

Если что-то фундаментальное не работает, попробуйте обновить работы DSL плагин до последней версии и попытаться получить tutorial шаги (вы можете пропустить # 4) работает.

Подробнее см. Комментарии.