Я не понимаю, почему Jenkinsfile не берет параметризованное значение из задания. У меня этот параметр $BUILD_UI
.
Дженкинсфайл:
stages {
stage("Prepare") {
when {
expression { return $BUILD_UI == 'true' }
}
steps {
checkout([$class: 'GitSCM',
branches: [[name: '$UI_BRANCH_NAME' ]],
extensions: [[$class: 'CleanCheckout'],
[$class: 'SubmoduleOption',
disableSubmodules: false,
parentCredentials: true,
recursiveSubmodules: true,
reference: '',
trackingSubmodules: false],
[$class: 'RelativeTargetDirectory',
relativeTargetDir: 'defender-ui/']],
userRemoteConfigs: [[
url: '[email protected]:xxx/xxxxx.git',
credentialsId: 'xxxxxx-xxxxx-xxxx-xxxx'
]]
])
}
}
Но я продолжаю получать эту ошибку. Это не работает return $BUILD_UI == 'true'
:
groovy.lang.MissingPropertyException: No such property: $BUILD_UI for class: groovy.lang.Binding
at groovy.lang.Binding.getVariable(Binding.java:63)
at org.jenkinsci.plugins.scriptsecurity.sandbox.groovy.SandboxInterceptor.onGetProperty(SandboxInterceptor.java:270)
at org.kohsuke.groovy.sandbox.impl.Checker$6.call(Checker.java:291)
at org.kohsuke.groovy.sandbox.impl.Checker.checkedGetProperty(Checker.java:295)
at org.kohsuke.groovy.sandbox.impl.Checker.checkedGetProperty(Checker.java:271)
at org.kohsuke.groovy.sandbox.impl.Checker.checkedGetProperty(Checker.java:271)
at org.kohsuke.groovy.sandbox.impl.Checker.checkedGetProperty(Checker.java:271)
at com.cloudbees.groovy.cps.sandbox.SandboxInvoker.getProperty(SandboxInvoker.java:29)
at com.cloudbees.groovy.cps.impl.PropertyAccessBlock.rawGet(PropertyAccessBlock.java:20)
at WorkflowScript.run(WorkflowScript:13)