【问题标题】:How to use variable in Azure CLI script within Devops release Pipeline如何在 Devops 发布管道中的 Azure CLI 脚本中使用变量
【发布时间】:2022-01-09 17:47:23
【问题描述】:

我正在尝试将以下变量传递给 Azure 发布管道中的 Azure CLI 作业中的内联脚本,以获取身份的主体 ID:

miid=$(az identity show -g Resourcegroup -n prodaks-agentpool --query "principalId" -o tsv)

然后我运行以下命令在 keyvault 中为身份设置策略。

call az keyvault set-policy -n proddigitalkeyvault1 --key-permissions get --object-id $miid
call az keyvault set-policy -n proddigitalkeyvault1 --secret-permission get --object-id $miid
call az keyvault set-policy -n proddigitalkeyvault1 --certificate-permissions get --object-id $miid

我收到错误:“miid 未被识别为内部命令”。是否可以将此变量添加到内联脚本中?这个脚本在我自己的机器上运行时运行良好。

【问题讨论】:

  • 您使用的是什么脚本环境? Bash、Windows 命令行、PowerShell?您的第一行和引用 $miid 变量的方式看起来像 Bash 语法,但您显示的错误消息是 Windows shell 错误消息。确保您使用正确的操作系统和解释器运行脚本。
  • 很确定 Azure DevOps 不应该是问题的一部分。这纯粹是 az cli 对吧?
  • 我正在使用上述命令在 Azure Devops 中运行内联批处理脚本。要将变量miid变量添加到这个脚本中,最好是添加到内联脚本还是环境变量中?

标签: azure azure-devops azure-cli


【解决方案1】:

我将脚本类型切换为 shell 并删除了“调用”命令。此脚本现在在 Azure Devops 中运行正常

【讨论】:

  • @Callun Hester 不错的举动
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2019-04-29
  • 2021-07-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多