如何在Azure管道(VSTS)中使用Deploy到Kubernetes任务的输出变量

问题描述 投票:0回答:1

我是VSTS和Azure Kubernetes的新手。我正在构建一个VSTS CD管道。我已在我的管道中添加了Deploy to Kubernetes任务。我正在执行get命令并尝试将输出存储在输出变量中(可在Deploy底部的kubernetes任务中找到)。我已设置变量名称。

VSTS output variable

我试图获取上述输出变量的值。我使用命令行任务为变量设置值,如下所述

echo '##vso[task.setvariable variable=myStatusVar;isSecret=false;]$(myvar)'

其中myvar是变量,它在Deploy to kubernetes任务中设置为输出变量。

之后在另一个命令行任务中,我试图访问myStatusVar变量值,但是当我执行释放管道时,它显示消息:

找不到myvar命令

任何人都可以让我知道,如何使用部署的输出变量到VSTS管道的kuberentes任务?

kubernetes azure-devops azure-pipelines azure-pipelines-release-pipeline
1个回答
2
投票

如评论中所述,您的变量被“公开”为'myvar.KubectlOutput'

您在脚本中使用它的方式因您正在执行的脚本类型而异:

  • 批处理脚本:%MYVAR_KUBECTLOUTPUT%
  • PowerShell脚本:$ env:MYVAR_KUBECTLOUTPUT
  • Bash脚本:$ MYVAR_KUBECTLOUTPUT
  • Azure Devops'设计器视图':$(myvar.KubectlOutput)

有关详细信息,请参阅Azure DevOps中使用变量的文档:https://docs.microsoft.com/en-us/azure/devops/pipelines/process/variables?view=azure-devops&tabs=yaml%2Cbatch


推荐问答