Bamboo variable replacement in batch file

你说的曾经没有我的故事 提交于 2019-12-21 04:17:13

问题


We're running Atlassian's Bamboo build server 4.1.2 on a Windows machine. I've created a batch file that is executed within a Task. The script is just referenced in a .bat file an not inline in the task. (e.g. createimage.bat)

Within the createimage.bat, I'd like to use Bamboo's PLAN variables. The usual variable syntax is not working, means not replaced. A line in the script could be for example:

goq-image-${bamboo.INTERNALVERSION}-SB${bamboo.buildNumber}

Any ideas?


回答1:


You are using the internal Bamboo variables syntax, but the Script Task passes those into the operating system's script environment and they need to be referenced with the respective syntax accordingly, e.g. (please note the underscores between terms):

  • Unix - goq-image-$bamboo_INTERNALVERSION-SB$bamboo_buildNumber
  • Windows - goq-image-%bamboo_INTERNALVERSION%-SB%bamboo_buildNumber%

Surprisingly, I'm unable to find an official reference for the Windows variation, there's only Using variables in bash right now:

Bamboo variables are exported as bash shell variables. All full stops (periods) are converted to underscores. For example, the variable bamboo.my.variable is $bamboo_my_variable in bash. This is related to File Script tasks (not Inline Script tasks).

However, I've figured the Windows syntax from Atlassian's documentation at some point, and tested and used it as documented in Bamboo Variable Substitution/Definition:

  • these variables are also available as environment variables in the Script Task for example, albeit named slightly different, e.g. $bamboo_custom_aws_cfn_stack_StringWithRegex (Unix) or %bamboo_custom_aws_cfn_stack_StringWithRegex% (Windows)


来源:https://stackoverflow.com/questions/12196936/bamboo-variable-replacement-in-batch-file

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!