Skip to content

Commit c4a51ea

Browse files
authored
✨ Remove redundant variable copying in AWS provider. (#5818)
* Remove redundant variable copy in for loop. Signed-off-by: Vasil Sirakov <sirakov97@gmail.com> * Remove redundant err check. Signed-off-by: Vasil Sirakov <sirakov97@gmail.com> --------- Signed-off-by: Vasil Sirakov <sirakov97@gmail.com>
1 parent 65faba8 commit c4a51ea

30 files changed

+204
-266
lines changed

providers/aws/resources/aws_applicationautoscaling.go

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -57,11 +57,10 @@ func (a *mqlAwsApplicationAutoscaling) getTargets(conn *connection.AwsConnection
5757
}
5858

5959
for _, region := range regions {
60-
regionVal := region
6160
f := func() (jobpool.JobResult, error) {
62-
log.Debug().Msgf("appautoscaling>getTargets>calling aws with region %s", regionVal)
61+
log.Debug().Msgf("appautoscaling>getTargets>calling aws with region %s", region)
6362

64-
svc := conn.ApplicationAutoscaling(regionVal)
63+
svc := conn.ApplicationAutoscaling(region)
6564
ctx := context.Background()
6665

6766
res := []interface{}{}
@@ -71,7 +70,7 @@ func (a *mqlAwsApplicationAutoscaling) getTargets(conn *connection.AwsConnection
7170
resp, err := paginator.NextPage(ctx)
7271
if err != nil {
7372
if Is400AccessDeniedError(err) {
74-
log.Warn().Str("region", regionVal).Msg("error accessing region for AWS API")
73+
log.Warn().Str("region", region).Msg("error accessing region for AWS API")
7574
return res, nil
7675
}
7776
return nil, errors.Wrap(err, "could not gather application autoscaling scalable targets")
@@ -84,7 +83,7 @@ func (a *mqlAwsApplicationAutoscaling) getTargets(conn *connection.AwsConnection
8483
}
8584
mqlSTarget, err := CreateResource(a.MqlRuntime, "aws.applicationAutoscaling.target",
8685
map[string]*llx.RawData{
87-
"arn": llx.StringData(fmt.Sprintf("arn:aws:application-autoscaling:%s:%s:%s/%s", regionVal, conn.AccountId(), namespace, convert.ToValue(target.ResourceId))),
86+
"arn": llx.StringData(fmt.Sprintf("arn:aws:application-autoscaling:%s:%s:%s/%s", region, conn.AccountId(), namespace, convert.ToValue(target.ResourceId))),
8887
"namespace": llx.StringData(string(target.ServiceNamespace)),
8988
"scalableDimension": llx.StringData(string(target.ScalableDimension)),
9089
"minCapacity": llx.IntDataDefault(target.MinCapacity, 0),

providers/aws/resources/aws_autoscaling.go

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -130,9 +130,8 @@ func (a *mqlAwsAutoscaling) getGroups(conn *connection.AwsConnection) []*jobpool
130130
}
131131

132132
for _, region := range regions {
133-
regionVal := region
134133
f := func() (jobpool.JobResult, error) {
135-
svc := conn.Autoscaling(regionVal)
134+
svc := conn.Autoscaling(region)
136135
ctx := context.Background()
137136
res := []interface{}{}
138137

@@ -142,7 +141,7 @@ func (a *mqlAwsAutoscaling) getGroups(conn *connection.AwsConnection) []*jobpool
142141
groups, err := paginator.NextPage(ctx)
143142
if err != nil {
144143
if Is400AccessDeniedError(err) {
145-
log.Warn().Str("region", regionVal).Msg("error accessing region for AWS API")
144+
log.Warn().Str("region", region).Msg("error accessing region for AWS API")
146145
return res, nil
147146
}
148147
return nil, err
@@ -174,7 +173,7 @@ func (a *mqlAwsAutoscaling) getGroups(conn *connection.AwsConnection) []*jobpool
174173
"maxSize": llx.IntDataDefault(group.MaxSize, 0),
175174
"minSize": llx.IntDataDefault(group.MinSize, 0),
176175
"name": llx.StringDataPtr(group.AutoScalingGroupName),
177-
"region": llx.StringData(regionVal),
176+
"region": llx.StringData(region),
178177
"tags": llx.MapData(autoscalingTagsToMap(group.Tags), types.String),
179178
})
180179
if err != nil {

providers/aws/resources/aws_backups.go

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -56,16 +56,15 @@ func (a *mqlAwsBackup) getVaults(conn *connection.AwsConnection) []*jobpool.Job
5656
}
5757

5858
for _, region := range regions {
59-
regionVal := region
6059
f := func() (jobpool.JobResult, error) {
61-
svc := conn.Backup(regionVal)
60+
svc := conn.Backup(region)
6261
ctx := context.Background()
6362
res := []interface{}{}
6463

6564
vaults, err := svc.ListBackupVaults(ctx, &backup.ListBackupVaultsInput{})
6665
if err != nil {
6766
if Is400AccessDeniedError(err) {
68-
log.Warn().Str("region", regionVal).Msg("error accessing region for AWS API")
67+
log.Warn().Str("region", region).Msg("error accessing region for AWS API")
6968
return res, nil
7069
}
7170
return nil, err
@@ -76,7 +75,7 @@ func (a *mqlAwsBackup) getVaults(conn *connection.AwsConnection) []*jobpool.Job
7675
"arn": llx.StringDataPtr(v.BackupVaultArn),
7776
"name": llx.StringDataPtr(v.BackupVaultName),
7877
"createdAt": llx.TimeDataPtr(v.CreationDate),
79-
"region": llx.StringData(regionVal),
78+
"region": llx.StringData(region),
8079
"locked": llx.BoolDataPtr(v.Locked),
8180
"encryptionKeyArn": llx.StringDataPtr(v.EncryptionKeyArn),
8281
})

providers/aws/resources/aws_cloudtrail.go

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -203,10 +203,8 @@ func (a *mqlAwsCloudtrailTrail) id() (string, error) {
203203
}
204204

205205
func (a *mqlAwsCloudtrailTrail) status() (interface{}, error) {
206-
regionValue := a.Region.Data
207206
conn := a.MqlRuntime.Connection.(*connection.AwsConnection)
208-
209-
svc := conn.Cloudtrail(regionValue)
207+
svc := conn.Cloudtrail(a.Region.Data)
210208
ctx := context.Background()
211209

212210
arnValue := a.Arn.Data
@@ -223,10 +221,8 @@ func (a *mqlAwsCloudtrailTrail) status() (interface{}, error) {
223221
}
224222

225223
func (a *mqlAwsCloudtrailTrail) eventSelectors() ([]interface{}, error) {
226-
regionValue := a.Region.Data
227224
conn := a.MqlRuntime.Connection.(*connection.AwsConnection)
228-
229-
svc := conn.Cloudtrail(regionValue)
225+
svc := conn.Cloudtrail(a.Region.Data)
230226
ctx := context.Background()
231227

232228
arnValue := a.Arn.Data

providers/aws/resources/aws_cloudwatch.go

Lines changed: 13 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -56,9 +56,8 @@ func (a *mqlAwsCloudwatch) getMetrics(conn *connection.AwsConnection) []*jobpool
5656
}
5757

5858
for _, region := range regions {
59-
regionVal := region
6059
f := func() (jobpool.JobResult, error) {
61-
svc := conn.Cloudwatch(regionVal)
60+
svc := conn.Cloudwatch(region)
6261
ctx := context.Background()
6362

6463
res := []interface{}{}
@@ -68,7 +67,7 @@ func (a *mqlAwsCloudwatch) getMetrics(conn *connection.AwsConnection) []*jobpool
6867
metrics, err := paginator.NextPage(ctx)
6968
if err != nil {
7069
if Is400AccessDeniedError(err) {
71-
log.Warn().Str("region", regionVal).Msg("error accessing region for AWS API")
70+
log.Warn().Str("region", region).Msg("error accessing region for AWS API")
7271
return res, nil
7372
}
7473
return nil, err
@@ -91,7 +90,7 @@ func (a *mqlAwsCloudwatch) getMetrics(conn *connection.AwsConnection) []*jobpool
9190
map[string]*llx.RawData{
9291
"name": llx.StringDataPtr(metric.MetricName),
9392
"namespace": llx.StringDataPtr(metric.Namespace),
94-
"region": llx.StringData(regionVal),
93+
"region": llx.StringData(region),
9594
"dimensions": llx.ArrayData(dimensions, types.Resource("aws.cloudwatch.metricdimension")),
9695
})
9796
if err != nil {
@@ -459,9 +458,8 @@ func (a *mqlAwsCloudwatch) getAlarms(conn *connection.AwsConnection) []*jobpool.
459458
}
460459

461460
for _, region := range regions {
462-
regionVal := region
463461
f := func() (jobpool.JobResult, error) {
464-
svc := conn.Cloudwatch(regionVal)
462+
svc := conn.Cloudwatch(region)
465463
ctx := context.Background()
466464

467465
res := []interface{}{}
@@ -471,7 +469,7 @@ func (a *mqlAwsCloudwatch) getAlarms(conn *connection.AwsConnection) []*jobpool.
471469
alarms, err := paginator.NextPage(ctx)
472470
if err != nil {
473471
if Is400AccessDeniedError(err) {
474-
log.Warn().Str("region", regionVal).Msg("error accessing region for AWS API")
472+
log.Warn().Str("region", region).Msg("error accessing region for AWS API")
475473
return res, nil
476474
}
477475
return nil, err
@@ -483,7 +481,7 @@ func (a *mqlAwsCloudwatch) getAlarms(conn *connection.AwsConnection) []*jobpool.
483481
mqlAlarmAction, err := NewResource(a.MqlRuntime, "aws.sns.topic",
484482
map[string]*llx.RawData{
485483
"arn": llx.StringData(action),
486-
"region": llx.StringData(regionVal),
484+
"region": llx.StringData(region),
487485
})
488486
if err != nil {
489487
return nil, err
@@ -495,7 +493,7 @@ func (a *mqlAwsCloudwatch) getAlarms(conn *connection.AwsConnection) []*jobpool.
495493
mqlInsuffAction, err := NewResource(a.MqlRuntime, "aws.sns.topic",
496494
map[string]*llx.RawData{
497495
"arn": llx.StringData(action),
498-
"region": llx.StringData(regionVal),
496+
"region": llx.StringData(region),
499497
})
500498
if err != nil {
501499
return nil, err
@@ -508,7 +506,7 @@ func (a *mqlAwsCloudwatch) getAlarms(conn *connection.AwsConnection) []*jobpool.
508506
mqlokAction, err := NewResource(a.MqlRuntime, "aws.sns.topic",
509507
map[string]*llx.RawData{
510508
"arn": llx.StringData(action),
511-
"region": llx.StringData(regionVal),
509+
"region": llx.StringData(region),
512510
})
513511
if err != nil {
514512
return nil, err
@@ -521,7 +519,7 @@ func (a *mqlAwsCloudwatch) getAlarms(conn *connection.AwsConnection) []*jobpool.
521519
"arn": llx.StringDataPtr(alarm.AlarmArn),
522520
"metricName": llx.StringDataPtr(alarm.MetricName),
523521
"metricNamespace": llx.StringDataPtr(alarm.Namespace),
524-
"region": llx.StringData(regionVal),
522+
"region": llx.StringData(region),
525523
"state": llx.StringData(string(alarm.StateValue)),
526524
"stateReason": llx.StringDataPtr(alarm.StateReason),
527525
"insufficientDataActions": llx.ArrayData(insuffActions, types.Resource("aws.sns.topic")),
@@ -567,11 +565,10 @@ func (a *mqlAwsCloudwatch) getLogGroups(conn *connection.AwsConnection) []*jobpo
567565
return []*jobpool.Job{{Err: err}}
568566
}
569567
for _, region := range regions {
570-
regionVal := region
571568
f := func() (jobpool.JobResult, error) {
572-
log.Debug().Msgf("cloudwatch>getLogGroups>calling aws with region %s", regionVal)
569+
log.Debug().Msgf("cloudwatch>getLogGroups>calling aws with region %s", region)
573570

574-
svc := conn.CloudwatchLogs(regionVal)
571+
svc := conn.CloudwatchLogs(region)
575572
ctx := context.Background()
576573

577574
params := &cloudwatchlogs.DescribeLogGroupsInput{}
@@ -581,7 +578,7 @@ func (a *mqlAwsCloudwatch) getLogGroups(conn *connection.AwsConnection) []*jobpo
581578
logGroups, err := paginator.NextPage(ctx)
582579
if err != nil {
583580
if Is400AccessDeniedError(err) {
584-
log.Warn().Str("region", regionVal).Msg("error accessing region for AWS API")
581+
log.Warn().Str("region", region).Msg("error accessing region for AWS API")
585582
return res, nil
586583
}
587584
return nil, errors.Wrap(err, "could not gather AWS CloudWatch log groups")
@@ -590,7 +587,7 @@ func (a *mqlAwsCloudwatch) getLogGroups(conn *connection.AwsConnection) []*jobpo
590587
for _, loggroup := range logGroups.LogGroups {
591588
args["arn"] = llx.StringDataPtr(loggroup.Arn)
592589
args["name"] = llx.StringDataPtr(loggroup.LogGroupName)
593-
args["region"] = llx.StringData(regionVal)
590+
args["region"] = llx.StringData(region)
594591
args["retentionInDays"] = llx.IntDataDefault(loggroup.RetentionInDays, 0)
595592

596593
// add kms key if there is one

providers/aws/resources/aws_codebuild.go

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -48,9 +48,8 @@ func (a *mqlAwsCodebuild) getProjects(conn *connection.AwsConnection) []*jobpool
4848
}
4949

5050
for _, region := range regions {
51-
regionVal := region
5251
f := func() (jobpool.JobResult, error) {
53-
svc := conn.Codebuild(regionVal)
52+
svc := conn.Codebuild(region)
5453
ctx := context.Background()
5554

5655
res := []interface{}{}
@@ -60,7 +59,7 @@ func (a *mqlAwsCodebuild) getProjects(conn *connection.AwsConnection) []*jobpool
6059
projects, err := paginator.NextPage(ctx)
6160
if err != nil {
6261
if Is400AccessDeniedError(err) {
63-
log.Warn().Str("region", regionVal).Msg("error accessing region for AWS API")
62+
log.Warn().Str("region", region).Msg("error accessing region for AWS API")
6463
return res, nil
6564
}
6665
return nil, err
@@ -70,7 +69,7 @@ func (a *mqlAwsCodebuild) getProjects(conn *connection.AwsConnection) []*jobpool
7069
mqlProject, err := CreateResource(a.MqlRuntime, "aws.codebuild.project",
7170
map[string]*llx.RawData{
7271
"name": llx.StringData(project),
73-
"region": llx.StringData(regionVal),
72+
"region": llx.StringData(region),
7473
})
7574
if err != nil {
7675
return nil, err

providers/aws/resources/aws_dms.go

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -54,11 +54,10 @@ func (a *mqlAwsDms) getReplicationInstances(conn *connection.AwsConnection) []*j
5454
}
5555

5656
for _, region := range regions {
57-
regionVal := region
5857
f := func() (jobpool.JobResult, error) {
59-
log.Debug().Msgf("dms>getReplicationInstances>calling aws with region %s", regionVal)
58+
log.Debug().Msgf("dms>getReplicationInstances>calling aws with region %s", region)
6059

61-
svc := conn.Dms(regionVal)
60+
svc := conn.Dms(region)
6261
ctx := context.Background()
6362
res := []interface{}{}
6463

@@ -68,7 +67,7 @@ func (a *mqlAwsDms) getReplicationInstances(conn *connection.AwsConnection) []*j
6867
replicationInstances, err := paginator.NextPage(ctx)
6968
if err != nil {
7069
if Is400AccessDeniedError(err) {
71-
log.Warn().Str("region", regionVal).Msg("error accessing region for AWS API")
70+
log.Warn().Str("region", region).Msg("error accessing region for AWS API")
7271
return nil, nil
7372
}
7473
return nil, err

providers/aws/resources/aws_dynamodb.go

Lines changed: 13 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -80,19 +80,18 @@ func (a *mqlAwsDynamodb) getExports(conn *connection.AwsConnection) []*jobpool.J
8080
}
8181

8282
for _, region := range regions {
83-
regionVal := region
8483
f := func() (jobpool.JobResult, error) {
85-
log.Debug().Msgf("dynamodb>getExports>calling aws with region %s", regionVal)
84+
log.Debug().Msgf("dynamodb>getExports>calling aws with region %s", region)
8685

87-
svc := conn.Dynamodb(regionVal)
86+
svc := conn.Dynamodb(region)
8887
ctx := context.Background()
8988
res := []interface{}{}
9089

9190
// no pagination required
9291
listExportsResp, err := svc.ListExports(ctx, &dynamodb.ListExportsInput{})
9392
if err != nil {
9493
if Is400AccessDeniedError(err) {
95-
log.Warn().Str("region", regionVal).Msg("error accessing region for AWS API")
94+
log.Warn().Str("region", region).Msg("error accessing region for AWS API")
9695
return res, nil
9796
}
9897
return nil, errors.Wrap(err, "could not gather aws dynamodb exports")
@@ -368,28 +367,27 @@ func (a *mqlAwsDynamodb) getLimits(conn *connection.AwsConnection) []*jobpool.Jo
368367
}
369368

370369
for _, region := range regions {
371-
regionVal := region
372370
f := func() (jobpool.JobResult, error) {
373-
log.Debug().Msgf("dynamodb>getLimits>calling aws with region %s", regionVal)
371+
log.Debug().Msgf("dynamodb>getLimits>calling aws with region %s", region)
374372

375-
svc := conn.Dynamodb(regionVal)
373+
svc := conn.Dynamodb(region)
376374
ctx := context.Background()
377375
res := []interface{}{}
378376

379377
// no pagination required
380378
limitsResp, err := svc.DescribeLimits(ctx, &dynamodb.DescribeLimitsInput{})
381379
if err != nil {
382380
if Is400AccessDeniedError(err) {
383-
log.Warn().Str("region", regionVal).Msg("error accessing region for AWS API")
381+
log.Warn().Str("region", region).Msg("error accessing region for AWS API")
384382
return res, nil
385383
}
386384
return nil, errors.Wrap(err, "could not gather aws dynamodb backups")
387385
}
388386

389387
mqlLimits, err := CreateResource(a.MqlRuntime, "aws.dynamodb.limit",
390388
map[string]*llx.RawData{
391-
"arn": llx.StringData(fmt.Sprintf(limitsArn, regionVal, conn.AccountId())),
392-
"region": llx.StringData(regionVal),
389+
"arn": llx.StringData(fmt.Sprintf(limitsArn, region, conn.AccountId())),
390+
"region": llx.StringData(region),
393391
"accountMaxRead": llx.IntData(*limitsResp.AccountMaxReadCapacityUnits),
394392
"accountMaxWrite": llx.IntData(*limitsResp.AccountMaxWriteCapacityUnits),
395393
"tableMaxRead": llx.IntData(*limitsResp.TableMaxReadCapacityUnits),
@@ -456,19 +454,18 @@ func (a *mqlAwsDynamodb) getTables(conn *connection.AwsConnection) []*jobpool.Jo
456454
}
457455

458456
for _, region := range regions {
459-
regionVal := region
460457
f := func() (jobpool.JobResult, error) {
461-
log.Debug().Msgf("dynamodb>getTables>calling aws with region %s", regionVal)
458+
log.Debug().Msgf("dynamodb>getTables>calling aws with region %s", region)
462459

463-
svc := conn.Dynamodb(regionVal)
460+
svc := conn.Dynamodb(region)
464461
ctx := context.Background()
465462
res := []interface{}{}
466463

467464
// no pagination required
468465
listTablesResp, err := svc.ListTables(ctx, &dynamodb.ListTablesInput{})
469466
if err != nil {
470467
if Is400AccessDeniedError(err) {
471-
log.Warn().Str("region", regionVal).Msg("error accessing region for AWS API")
468+
log.Warn().Str("region", region).Msg("error accessing region for AWS API")
472469
return res, nil
473470
}
474471
return nil, errors.Wrap(err, "could not gather aws dynamodb tables")
@@ -490,9 +487,9 @@ func (a *mqlAwsDynamodb) getTables(conn *connection.AwsConnection) []*jobpool.Jo
490487

491488
mqlTable, err := CreateResource(a.MqlRuntime, "aws.dynamodb.table",
492489
map[string]*llx.RawData{
493-
"arn": llx.StringData(fmt.Sprintf(dynamoTableArnPattern, regionVal, conn.AccountId(), tableName)),
490+
"arn": llx.StringData(fmt.Sprintf(dynamoTableArnPattern, region, conn.AccountId(), tableName)),
494491
"name": llx.StringData(tableName),
495-
"region": llx.StringData(regionVal),
492+
"region": llx.StringData(region),
496493
"sseDescription": llx.DictData(sseDict),
497494
"provisionedThroughput": llx.DictData(throughputDict),
498495
"createdTime": llx.TimeDataPtr(table.Table.CreationDateTime),

0 commit comments

Comments
 (0)