Skip to content

Commit 3043eb8

Browse files
committed
fixed filtering
1 parent 139c6ba commit 3043eb8

File tree

1 file changed

+25
-46
lines changed

1 file changed

+25
-46
lines changed

src/libs/ec2.go

Lines changed: 25 additions & 46 deletions
Original file line numberDiff line numberDiff line change
@@ -62,13 +62,9 @@ func Describe(awsRegions, IDs, iamRoles []string, accountAliasses map[string]str
6262
return items
6363
}
6464

65-
for _, item := range filterEc2(items, IDs) {
66-
filteredItems = append(filteredItems, item)
67-
}
65+
filteredItems = append(filteredItems, filterEc2(items, IDs)...)
6866

69-
for _, item := range filterSg(items, IDs) {
70-
filteredItems = append(filteredItems, item)
71-
}
67+
filteredItems = append(filteredItems, filterSg(items, IDs)...)
7268

7369
return filteredItems
7470
}
@@ -238,39 +234,37 @@ func filterEc2(items Items, IDs []string) Items {
238234
}
239235

240236
if len(IDs) != 0 && len(resourceIDs) == 0 && len(resourceIPs) == 0 {
241-
return items
237+
return Items{}
242238
}
243239

244240
for _, item := range items {
245241

246-
if len(resourceIDs) > 0 || len(resourceIPs) > 0 {
247-
hit := false
242+
hit := false
248243

249-
for _, id := range resourceIDs {
250-
if item.ID == id {
251-
hit = true
252-
}
253-
254-
if hit == true {
255-
break
256-
}
244+
for _, id := range resourceIDs {
245+
if item.ID == id {
246+
hit = true
257247
}
258248

259-
for _, ip := range resourceIPs {
260-
if item.IP == ip {
261-
hit = true
262-
}
249+
if hit == true {
250+
break
251+
}
252+
}
263253

264-
if hit == true {
265-
break
266-
}
254+
for _, ip := range resourceIPs {
255+
if item.IP == ip {
256+
hit = true
267257
}
268258

269-
if hit == false {
270-
continue
259+
if hit == true {
260+
break
271261
}
272262
}
273263

264+
if hit == false {
265+
continue
266+
}
267+
274268
filteredItems = append(filteredItems, item)
275269
}
276270

@@ -283,38 +277,23 @@ func filterSg(items Items, IDs []string) Items {
283277
var match bool
284278

285279
for _, id := range IDs {
286-
// EC2 instances
287280
match, _ = regexp.MatchString("sg-[a-zA-Z0-9_]+", id)
288281
if match {
289282
resourceIDs = append(resourceIDs, id)
290283
}
291284
}
292285

293286
if len(IDs) != 0 && len(resourceIDs) == 0 {
294-
return items
287+
return Items{}
295288
}
296289

297290
for _, item := range items {
298-
299-
if len(resourceIDs) > 0 {
300-
hit := false
301-
302-
for _, id := range resourceIDs {
303-
if item.ID == id {
304-
hit = true
305-
}
306-
307-
if hit == true {
308-
break
309-
}
310-
}
311-
312-
if hit == false {
313-
continue
291+
for _, id := range resourceIDs {
292+
if item.ID == id {
293+
filteredItems = append(filteredItems, item)
294+
break
314295
}
315296
}
316-
317-
filteredItems = append(filteredItems, item)
318297
}
319298

320299
return filteredItems

0 commit comments

Comments
 (0)