Azure DevOps Bash任务中未定义变量的默认值疑问
未定义的Azure DevOps流水线秘密环境变量默认值问题
这是关于「如何在Azure DevOps流水线中添加环境变量」问题的延伸,此前@Krzysztof Madej的回答是正确的,但存在一个细节疑问:若要传递的秘密环境变量未在ADO变量组中定义,它的默认值是什么?
以下是流水线中的相关代码片段:
- task: Bash@3 displayName: Running bash step inputs: targetType: "inline" workingDirectory: "xxx" script: | az login --identity --username $(ARM_CLIENT_ID) env: ARM_CLIENT_ID: $(ARM_CLIENT_ID)
在实际场景中,如果忘记在ADO变量组中设置ARM_CLIENT_ID,流水线里这个变量的默认值会是什么?
常规预期是为空字符串或null,但实际观察到的行为是:默认值为变量名称的字面字符串,也就是本例中的"$(ARM_CLIENT_ID)"。
目前未能找到针对该细节的官方文档,仅找到微软文档中Bash任务的示例内容,但未覆盖此场景。请问是否有人遇到过同样的情况?
内容的提问来源于stack exchange,提问作者Douglas Young
相关产品推荐
相关产品推荐

