job('ci') {
description 'Build and test the app.'
scm {
github 'sheehan/job-dsl-playground'
}
steps {
conditionalSteps {
condition {
or {
stringsMatch 'fred', 'wilma', true
stringsMatch 'foo', 'bar', false
}
}
steps {
shell 'something'
}
}
}
publishers {
archiveJunit 'build/test-results/**/*.xml'
}
} <builders>
<org.jenkinsci.plugins.conditionalbuildstep.ConditionalBuilder>
<runCondition class='org.jenkins_ci.plugins.run_condition.logic.Or'>
<conditions>
<org.jenkins__ci.plugins.run__condition.logic.ConditionContainer>
<condition class='org.jenkins_ci.plugins.run_condition.core.StringsMatchCondition'>
<arg1>foo</arg1>
<arg2>bar</arg2>
<ignoreCase>false</ignoreCase>
</condition>
</org.jenkins__ci.plugins.run__condition.logic.ConditionContainer>
</conditions>
</runCondition>
<runner class='org.jenkins_ci.plugins.run_condition.BuildStepRunner$Fail'></runner>
<conditionalbuilders>
<hudson.tasks.Shell>
<command>something</command>
</hudson.tasks.Shell>
</conditionalbuilders>
</org.jenkinsci.plugins.conditionalbuildstep.ConditionalBuilder>
</builders>
<builders>
<org.jenkinsci.plugins.conditionalbuildstep.ConditionalBuilder>
<runCondition class='org.jenkins_ci.plugins.run_condition.logic.Or'>
<conditions>
<org.jenkins__ci.plugins.run__condition.logic.ConditionContainer>
<condition class='org.jenkins_ci.plugins.run_condition.core.StringsMatchCondition'>
<arg1>fred</arg1>
<arg2>wilma</arg2>
<ignoreCase>false</ignoreCase>
</condition>
</org.jenkins__ci.plugins.run__condition.logic.ConditionContainer>
<org.jenkins__ci.plugins.run__condition.logic.ConditionContainer>
<condition class='org.jenkins_ci.plugins.run_condition.core.StringsMatchCondition'>
<arg1>foo</arg1>
<arg2>bar</arg2>
<ignoreCase>false</ignoreCase>
</condition>
</org.jenkins__ci.plugins.run__condition.logic.ConditionContainer>
</conditions>
</runCondition>
<runner class='org.jenkins_ci.plugins.run_condition.BuildStepRunner$Fail'></runner>
<conditionalbuilders>
<hudson.tasks.Shell>
<command>something</command>
</hudson.tasks.Shell>
</conditionalbuilders>
</org.jenkinsci.plugins.conditionalbuildstep.ConditionalBuilder>
</builders>
There will be some examples of using conditional steps.
Cheers