@@ -89,8 +89,9 @@ func (r *AwsResourceMissingTagsRule) getProviderLevelTags(runner tflint.Runner)
89
89
providerAlias = "default"
90
90
} else {
91
91
err := runner .EvaluateExpr (providerAttr .Expr , func (alias string ) error {
92
+ logger .Debug ("Walk `%s` provider" , providerAlias )
92
93
providerAlias = alias
93
- // Init the provider reference even if it doesn't have tags
94
+ // Init the provider reference even if it doesn't have tags
94
95
allProviderTags [alias ] = nil
95
96
return nil
96
97
}, nil )
@@ -107,6 +108,7 @@ func (r *AwsResourceMissingTagsRule) getProviderLevelTags(runner tflint.Runner)
107
108
}
108
109
109
110
err := runner .EvaluateExpr (attr .Expr , func (tags map [string ]string ) error {
111
+ logger .Debug ("Walk `%s` provider with tags `%v`" , providerAlias , tags )
110
112
providerTags = tags
111
113
return nil
112
114
}, nil )
@@ -188,17 +190,14 @@ func (r *AwsResourceMissingTagsRule) Check(runner tflint.Runner) error {
188
190
"Walk `%s` attribute" ,
189
191
resource .Labels [0 ]+ "." + resource .Labels [1 ]+ "." + tagsAttributeName ,
190
192
)
191
- // Since the evlaluateExpr, overrides k/v pairs, we need to re-copy the tags
192
- resourceTagsAux := make (map [string ]string )
193
193
194
- err := runner .EvaluateExpr (attribute .Expr , func (val map [string ]string ) error {
195
- resourceTagsAux = val
194
+ err := runner .EvaluateExpr (attribute .Expr , func (evaluatedTags map [string ]string ) error {
195
+ // Since the evlaluateExpr, overrides k/v pairs, we need to re-copy the tags
196
+ maps .Copy (resourceTags , evaluatedTags )
197
+ r .emitIssue (runner , resourceTags , config , attribute .Expr .Range ())
196
198
return nil
197
199
}, nil )
198
200
199
- maps .Copy (resourceTags , resourceTagsAux )
200
- r .emitIssue (runner , resourceTags , config , attribute .Expr .Range ())
201
-
202
201
if err != nil {
203
202
return err
204
203
}
0 commit comments