Bamboo变量不存在时如何获取空值而非原变量名字符串
Bamboo未定义变量返回空值/Null解决方案
Bamboo默认会将不存在的变量原样返回变量名字符串,可通过以下几种方法处理:
1. 脚本任务内判断处理
Bash环境
先赋值变量后做字符串匹配判断,匹配到变量名则替换为空值:
# 读取Bamboo变量 trigger_user=${bamboo.ManualBuildTriggerReason.userName} # 判断是否为未解析的变量名 if [[ "$trigger_user" == '${bamboo.ManualBuildTriggerReason.userName}' ]]; then trigger_user="" fi
PowerShell环境
$triggerUser = '${bamboo.ManualBuildTriggerReason.userName}' if ($triggerUser -eq '${bamboo.ManualBuildTriggerReason.userName}') { $triggerUser = $null }
2. 内置条件表达式直接处理
不需要写脚本的场景,可直接在配置项中使用Bamboo内置的三元表达式:${bamboo.ManualBuildTriggerReason.userName != null ? bamboo.ManualBuildTriggerReason.userName : ''}
变量存在时返回实际值,不存在时直接返回空字符串。
3. 预设变量默认值
在Bamboo计划或项目的变量配置页,提前给ManualBuildTriggerReason.userName这类触发场景相关的变量设置默认值为空字符串。当变量未被触发逻辑赋值时,会直接返回预设的空值,不会输出原变量名。
内容的提问来源于stack exchange,提问作者Volodymyr Bilovus
相关产品推荐
相关产品推荐

