【发布时间】:2016-02-05 02:09:05
【问题描述】:
我尝试使用此条件多步骤插件并为 DSL 编写了 grrovy 脚本,但是当我使用此代码引导时,列出的步骤位于条件块之前,我在这里做错了什么?
代码:
def configSeed(environment, slaveLabel) {
{ it ->
parameters {
stringParam('BUILD_REQUIRED', 'true', '');
}
scm {
git {
remote {
name('origin');
url('xyz');
refspec('$GERRIT_REFSPEC');
credentials('xyz');
}
branch('$GERRIT_BRANCH');
strategy {
gerritTrigger();
}
}
}
steps {
conditionalSteps {
condition {
stringsMatch('${BUILD_REQUIRED}', 'true', false)
}
runner('Fail')
steps {
environmentVariables {
envs(environment);
}
batchFile('''
call npm install
''');
batchFile('''
call mkdir buildArchive
''');
}
}
}
publishers {
wsCleanup {
includePattern('build/**')
}
}
wrappers {
preBuildCleanup();
timeout {
noActivity(300);
abortBuild();
}
}
label(slaveLabel);
}
};
所以创建的詹金斯工作显示为
npm install
mkdir buildArchive
Conditional step
代替
Conditional step
{
npm install
mkdir buildArchive
}
我在这里做错了什么?
【问题讨论】:
-
什么是"...列出的步骤在条件块之前..."是什么意思?
-
@tim_yates 更新了上面的描述。我在上面的条件步骤之外看到了命令,而不是在其中。
标签: jenkins groovy conditional dsl