如何查看Terraform部署栈所用的全部变量?
查看Terraform栈所用全部变量的方法
单Workspace变量查看
- 查看已应用的变量:执行
terraform show -json,该命令会输出当前状态的完整JSON数据,其中包含所有已生效的变量值。若要直接提取变量部分,可配合jq工具过滤:terraform show -json | jq '.variables' - 查看计划中使用的变量:先生成计划文件,再解析其中的变量,适合排查
terraform plan报错场景:terraform plan -out=plan.tfplan terraform show -json plan.tfplan | jq '.variables'
多Workspace批量查看
- 切换到目标Workspace后执行上述命令:
terraform workspace select <workspace-name> terraform show -json | jq '.variables' - 批量遍历所有Workspace的变量,可使用shell脚本自动处理:
for ws in $(terraform workspace list | sed 's/*//'); do echo "=== Workspace: $ws ===" terraform workspace select "$ws" terraform show -json | jq '.variables' done
补充变量来源检查
- 查看环境变量中设置的Terraform变量:
env | grep TF_VAR_ - 检查本地配置文件:包括
terraform.tfvars、自定义.tfvars文件,以及variables.tf中定义的变量默认值。
内容的提问来源于stack exchange,提问作者user19009041
相关产品推荐
相关产品推荐

