在脚本中构建 Bamboo 变量的名称

Build the name of Bamboo variable in script

是否可以连接一个字符串来调用 Bamboo 变量。

在 Bamboo 中使用脚本任务,我想归纳如下:

python my.py moon ${bamboo.mynamespace.moon}

SET planet=MOON
python my.py %planet% ${bamboo.mynamespace.%planet%}

但是像上面的第二个例子那样做会导致我的 python 脚本收到

${bamboo.mynamespace.%planet%}

作为字符串而不是

的值
${bamboo.mynamespace.moon}

我知道...月亮不是行星

我认为您使用它的方式不可能实现。因为一旦您使用 ${bamboo.variableName} Bamboo 就会尝试解析变量并将其替换为变量值。由于没有 variable%planet% Bamboo 无法引用它。

但是我认为您可以重新组织一下您的解决方案并使用环境变量(所有 Bamboo 变量都作为环境变量传递给进程)。所以例如如果 Bamboo 变量的名称是 variable.name 您可以通过 ${bamboo_variable_name} (bamboo 前缀+ 所有点都替换为下划线)

然后我可以想象你可以通过 print os.environ['bamboo_mynamespace_' + 'planet'] 获得你感兴趣的变量(更多关于 env 变量的信息在 python here