我找不到报告特定 Terraform 提供商(在本例中为 AWS 提供商)版本的规范方法。我可以找到一个似乎以版本信息命名的二进制文件:
$ ls .terraform/plugins/darwin_amd64/
lock.json
terraform-provider-aws_v1.0.0_x4
但没有其他参考v1.0.0_x4
或任何其他版本。
我正在想象一些类似的命令terraform providers --version
,它目前只会打印出 Terraform 版本。
说到这,我正在使用 Terraform v0.10.7。
欢呼吧,詹姆斯
答案1
从 v0.12.x 开始,该version
命令是获取提供程序版本的最简单方法:
terraform version
#=>
Terraform v0.13.5
+ provider registry.terraform.io/hashicorp/azuread v1.4.0
+ provider registry.terraform.io/hashicorp/azurerm v2.51.0
+ provider registry.terraform.io/hashicorp/helm v2.0.2
+ provider registry.terraform.io/hashicorp/kubernetes v2.0.1
+ provider registry.terraform.io/hashicorp/null v3.0.0
有关更多信息,请查看 Terraform CLI 参考这里。
可以使用以下 JSON 格式获取提供商的详细信息:
terraform providers schema -json
#=>
{"format_version":"0.2","provider_schemas":{"registry.terraform.io/hashicorp . . .
答案2
提供程序版本包含在version
命令的输出中:
terraform version
#=>
Terraform v0.12.x
on . . .
+ provider registry.terraform.io/hashicorp/. . .
+ provider registry.terraform.io/hashicorp/. . .
. . .
答案3
这是我知道的唯一方法。我推测如果这不是应该做的事情,当你报告错误时,terraform 开发人员会告诉你如何以不同的方式去做。