我试图将使用 Azure DevOps 的 terraform 部署生成的 databricks 工作区名称作为变量传递到另一个步骤,但不知道该怎么做。
所以我在我的output.tf中定义了输出
output "workspace_name" {
value = azurerm_databricks_workspace.databricks.name
}
我可以看到输出:
通过 stackoverflow,有一个解决方案可以自动将所有输出作为变量:
1-
配置输出变量:
2-配置powershell脚本来获取它们并填充它
3-现在怎么办?变量名称是什么?如何在 Databricks Bearer Token 解决方案中使用它?
$json = Get-Content $env:jsonPath | Out-String | ConvertFrom-Json
foreach($prop in $json.psobject.properties) {
Write-Host("##vso[task.setvariable variable=$($prop.Name);]$($prop.Value.value)")
}
该脚本的逻辑用于循环output
您之前的 terraform 生成的 json 文件。
还有这条线"##vso[task.setvariable variable=$($prop.Name);]$($prop.Value.value)"
旨在设定name
其中显示在output
json 文件作为管道变量名称,并将输出 json 文件中对应的值设置为其管道变量的值。
这是他们的地图展示:
Terraform Output Json Azure devops pipeline
Output name ================> varaible name
Output value ================> variable value
因此,在Databricks Bearer Token任务中,您可以通过您在中配置的名称直接调用变量terraform
file: workspace_name
.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)