Skip to content

Commit

Permalink
Check EnabledRules instead of Rules (#59)
Browse files Browse the repository at this point in the history
  • Loading branch information
wata727 authored Feb 1, 2021
1 parent 5161369 commit 34236c4
Show file tree
Hide file tree
Showing 3 changed files with 20 additions and 13 deletions.
27 changes: 17 additions & 10 deletions aws/ruleset.go
Original file line number Diff line number Diff line change
Expand Up @@ -30,12 +30,28 @@ func (r *RuleSet) RuleNames() []string {
func (r *RuleSet) ApplyConfig(config *tflint.Config) error {
r.ApplyCommonConfig(config)

// Apply "plugin" block config
cfg := Config{}
diags := gohcl.DecodeBody(config.Body, nil, &cfg)
if diags.HasErrors() {
return diags
}
r.config = &cfg

// Apply config for API rules
for _, rule := range r.APIRules {
enabled := rule.Enabled()
if cfg := config.Rules[rule.Name()]; cfg != nil {
enabled = cfg.Enabled
} else if config.DisabledByDefault {
enabled = false
}

if cfg.DeepCheck && enabled {
r.EnabledRules = append(r.EnabledRules, rule)
}
}

return nil
}

Expand All @@ -46,16 +62,7 @@ func (r *RuleSet) Check(rr tflint.Runner) error {
return err
}

for _, rule := range r.Rules {
if err := rule.Check(runner); err != nil {
return fmt.Errorf("Failed to check `%s` rule: %s", rule.Name(), err)
}
}
if !r.config.DeepCheck {
return nil
}

for _, rule := range r.APIRules {
for _, rule := range r.EnabledRules {
if err := rule.Check(runner); err != nil {
return fmt.Errorf("Failed to check `%s` rule: %s", rule.Name(), err)
}
Expand Down
2 changes: 1 addition & 1 deletion go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ require (
github.com/onsi/ginkgo v1.14.2 // indirect
github.com/onsi/gomega v1.10.4 // indirect
github.com/serenize/snaker v0.0.0-20201027110005-a7ad2135616e
github.com/terraform-linters/tflint-plugin-sdk v0.8.0
github.com/terraform-linters/tflint-plugin-sdk v0.8.1
github.com/terraform-providers/terraform-provider-aws v1.60.1-0.20210128214539-ac3363c699ef
github.com/zclconf/go-cty v1.7.1
)
4 changes: 2 additions & 2 deletions go.sum
Original file line number Diff line number Diff line change
Expand Up @@ -331,8 +331,8 @@ github.com/stretchr/testify v1.4.0/go.mod h1:j7eGeouHqKxXV5pUuKE4zz7dFj8WfuZ+81P
github.com/stretchr/testify v1.5.1/go.mod h1:5W2xD1RspED5o8YsWQXVCued0rvSQ+mT+I5cxcmMvtA=
github.com/stretchr/testify v1.6.1 h1:hDPOHmpOpP40lSULcqw7IrRb/u7w6RpDC9399XyoNd0=
github.com/stretchr/testify v1.6.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg=
github.com/terraform-linters/tflint-plugin-sdk v0.8.0 h1:+9LzYNTg+s+Lf9riNAa+0AaEdgaroD46ZmJwbAXzkFY=
github.com/terraform-linters/tflint-plugin-sdk v0.8.0/go.mod h1:A/6/RIqmPGmLWnI1JZef2Tyzw7/MFTl6t6G0BH9qALA=
github.com/terraform-linters/tflint-plugin-sdk v0.8.1 h1:KklKztWgRzvZLSi77GFU2y/jaA/e+OUWEV3bdouzPWw=
github.com/terraform-linters/tflint-plugin-sdk v0.8.1/go.mod h1:A/6/RIqmPGmLWnI1JZef2Tyzw7/MFTl6t6G0BH9qALA=
github.com/terraform-providers/terraform-provider-aws v1.60.1-0.20210128214539-ac3363c699ef h1:+UFdPdf7zyrxH6XVRs7FJpAc2ajrDx1OKWY7BBrQRds=
github.com/terraform-providers/terraform-provider-aws v1.60.1-0.20210128214539-ac3363c699ef/go.mod h1:2FJRHL/0yjp+iYXWoW2v4U80Zkz+mGHsHOB/Jdbw7AI=
github.com/ulikunitz/xz v0.5.5/go.mod h1:2bypXElzHzzJZwzH67Y6wb67pO62Rzfn7BSiF4ABRW8=
Expand Down

0 comments on commit 34236c4

Please sign in to comment.