我有一个Jenkinsfile,我想在表达式中比较两个变量。假设我的目标应具有v1和v2相同的值,应该跳过该步骤,但是两个变量都没有相同的值,詹金斯应该取消这项工作。
我目前的阶段看起来像这样。不幸的是,即使两个变量的值都不同,jenkins还是会覆盖此步骤。
stage('Compare') {
when {
expression { myVar = myVar2}
}
steps {
exit
}
}
答案 0 :(得分:1)
您在@ Input()
状态下犯了一个错误。表达式{
"rulesDirectory": [
"node_modules/codelyzer"
],
"extends": [
"rxjs-tslint-rules"
],
"rules": {
"callable-types": true,
"class-name": true,
"comment-format": [
true,
"check-space"
],
"curly": true,
"eofline": true,
"forin": true,
"import-blacklist": [
true,
"rxjs"
],
"import-spacing": true,
"indent": [
true,
"spaces"
],
"interface-over-type-literal": true,
"label-position": true,
"max-line-length": [
true,
140
],
"member-access": false,
"member-ordering": [
true,
{
"order": ["static-field", "instance-field", "constructor", "static-method", "instance-method"]
}
],
"no-arg": true,
"no-bitwise": true,
"no-console": [
true,
"debug",
"info",
"time",
"timeEnd",
"trace"
],
"no-construct": true,
"no-debugger": true,
"no-duplicate-variable": true,
"no-empty": false,
"no-empty-interface": true,
"no-eval": true,
"no-inferrable-types": [
true,
"ignore-params"
],
"no-shadowed-variable": true,
"no-string-literal": false,
"no-string-throw": true,
"no-switch-case-fall-through": true,
"no-trailing-whitespace": true,
"no-unused-expression": true,
"no-use-before-declare": true,
"no-var-keyword": true,
"object-literal-sort-keys": false,
"one-line": [
true,
"check-open-brace",
"check-catch",
"check-else",
"check-whitespace"
],
"prefer-const": true,
"quotemark": [
true,
"single"
],
"radix": true,
"semicolon": [
true,
"always"
],
"triple-equals": [
true,
"allow-null-check"
],
"typedef-whitespace": [
true,
{
"call-signature": "nospace",
"index-signature": "nospace",
"parameter": "nospace",
"property-declaration": "nospace",
"variable-declaration": "nospace"
}
],
"unified-signatures": true,
"variable-name": false,
"whitespace": [
true,
"check-branch",
"check-decl",
"check-module",
"check-separator",
"check-type",
"check-typecast",
"check-type-operator",
"check-preblock"
],
"directive-selector": [
true,
"attribute",
"cc",
"camelCase"
],
"component-selector": [
true,
"element",
"cc",
"kebab-case"
],
"use-input-property-decorator": true,
"use-output-property-decorator": true,
"use-host-property-decorator": true,
"use-life-cycle-interface": true,
"use-pipe-transform-interface": true,
"rxjs-add": {
"options": [{
"allowElsewhere": false,
"allowUnused": false,
"file": "./src/rxjs-imports.ts"
}],
"severity": "error"
},
"rxjs-no-unused-add": {
"severity": "error"
}
}
}
是一个赋值表达式(您将when
的值赋给变量myVar = myVar2
)。如果要测试是否两个variables are equal,则需要使用myVar2
运算符。
myVar