You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

TFLint禁用terraform_required_version等规则无效,求排查解决

问题

仓库中有大量未包含provider文件或配置的示例,为避免相关错误,我希望禁用TFLint的terraform_required_version和terraform_required_providers规则。但执行tflint --config=.tflint.hcl --recursive命令后,TFLint仍会报告这两个规则的警告,请问配置哪里出错了?

报错信息

32 issue(s) found:

Warning: terraform "required_version" attribute is required (terraform_required_version)

  on  line 0:
   (source code not available)

....

Warning: Missing version constraint for provider "aws" in `required_providers` (terraform_required_providers)

  on modules/rds/password_secrets_manager/main.tf line 26:
  26: resource "aws_secretsmanager_secret_version" "secret_version" {

当前.tflint.hcl配置

config {
  force               = true
  module              = true
  disabled_by_default = false
}

plugin "terraform" {
  enabled = true
  version = "0.5.0"
  source  = "github.com/terraform-linters/tflint-ruleset-terraform"
}

plugin "aws" {
  enabled = true
  version = "0.28.0"
  source  = "github.com/terraform-linters/tflint-ruleset-aws"
}

rule "terraform_required_version" {
  enabled = false
}

rule "terraform_required_providers" {
  enabled = false
}
解决方案

你当前的配置错误在于全局的rule块无法正确禁用属于插件的规则,这两个规则是terraform插件提供的,必须在plugin "terraform"块内部定义禁用规则。

修改后的正确配置如下:

config {
  force               = true
  module              = true
  disabled_by_default = false
}

plugin "terraform" {
  enabled = true
  version = "0.5.0"
  source  = "github.com/terraform-linters/tflint-ruleset-terraform"

  # 将禁用规则放在插件块内部
  rule "terraform_required_version" {
    enabled = false
  }

  rule "terraform_required_providers" {
    enabled = false
  }
}

plugin "aws" {
  enabled = true
  version = "0.28.0"
  source  = "github.com/terraform-linters/tflint-ruleset-aws"
}

原理:TFLint的插件规则是与对应插件绑定的,全局rule块仅对核心规则生效,对于插件提供的规则,必须在插件的配置块内声明禁用,这样TFLint才能正确识别并跳过这些规则的检查。

内容的提问来源于stack exchange,提问作者lony

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.05 00:52:41