未能找到所需的terraform最低版本
我正在使用tfenv切换terraform版本。最近我遇到了这个错误,我不知道如何解决这个问题 有人可以让我知道这里发生了什么,为什么它不能检测到最低要求的版本 错误:未能找到所需的terraform最低版本,terraform,terraform-provider-aws,Terraform,Terraform Provider Aws,我正在使用tfenv切换terraform版本。最近我遇到了这个错误,我不知道如何解决这个问题 有人可以让我知道这里发生了什么,为什么它不能检测到最低要求的版本 错误: tfenv install min-required && tfenv use min-required && terraform init -backend=false ./stage; terraform validate -var="api_key=xxxx" ./sta
tfenv install min-required && tfenv use min-required && terraform init -backend=false ./stage; terraform validate -var="api_key=xxxx" ./stage
Error: Could not determine required_version based on your terraform sources.
Make sure at least one of your *tf files includes a required version section like
terraform {
required_version = ">= 0.0.0"
}
see https://www.terraform.io/docs/configuration/terraform.html for details
tfenv-min-required failed
grep: brackets ([ ]) not balanced
No versions matching 'min-required' found in remote
生成文件:
DUTY_VAR=-var=api_key=xxxx test: tfenv install min-required && tfenv use min-required && terraform init -backend=false ./stage; terraform validate ${DUTY_VAR} ./stage
Terraform文件夹/文件结构:
|-terraform (directory)
|-modules ( directory)
| - main.tf
| - variables.tf
| - versions.tf
|
|-stage(root-module)(directory)
| - backend.tf
| - main.tf
| - .terraform-version
| - providers.tf
version.tf
terraform {
required_version = "0.11.13"
}
backend.tf
terraform {
required_version = "0.11.13"
backend "s3" {
bucket = "nonprod"
key = "tfstate/terraform.tfstate"
dynamodb_table = "terraform-state-lock"
region = "us-east-1"
encrypt = true
role_arn = "arn:aws:iam::zzzzzzz:role/yyy"
}
}
该答案分为两部分,如下所述: 第一部分 如错误中所述,请尝试在
required\u version
设置中指定地形版本,如下所示
required_version = ">= 0.11.13"
请注意>=
第二部分
根据Terraform文档,模块应仅限制其Terraform和提供者的最低允许版本,例如>=0.12.0
请参阅
因此,不要使用Terraform版本
0.11.13
,而尝试使用版本0.12.0
,我对tfenv
不太熟悉,不知道这里到底是什么,但这个错误似乎是其中一个的错误或不当行为。我想您可能已经遇到了.ya,但是只有当模块和根模块在同一个存储库中定义时才会发生这种情况,奇怪的是,它没有检测到所需的_版本。版本的定义有问题吗?