我正在使用分支名称将其传递到构建脚本中。$(env.BRANCH_NAME)。
我想在使用它之前操纵它。例如,如果我们从主干构建,我希望构建输出的后缀为空,但在分支的情况下,我希望它是 -branch 名称。
目前我通过定义环境部分来做到这一点。
environment {
OUTPUT_NAME_SUFFIX = ($(env.BRANCH_NAME) == 'trunk') ? '': $(env.BRANCH_NAME)
}
Run Code Online (Sandbox Code Playgroud)
我收到此错误:
WorkflowScript: 4: Environment variable values must either be single quoted, double quoted, or function calls. @ line 4, column 62.
(env.BRANCH_NAME) == 'trunk') ? '': $(en
^
Run Code Online (Sandbox Code Playgroud)
在管道范围内定义变量并评估其值的最佳方法是什么。
TIA
您可以使用字符串插值来计算表达式:
environment {
OUTPUT_NAME_SUFFIX = "${env.BRANCH_NAME == 'trunk' ? '': env.BRANCH_NAME}"
}
Run Code Online (Sandbox Code Playgroud)
这将修复您遇到的错误,但是管道不允许您拥有长度为 0 的环境变量,也就是空字符串 ( JENKINS-43632 )。
这意味着,设置OUTPUT_NAME_SUFFIX于''像unseting它。您可能希望预先计算输出的全名,以便您的 env 变量永远不会是空字符串。
| 归档时间: |
|
| 查看次数: |
6648 次 |
| 最近记录: |