@@ -60,27 +60,35 @@ def amis(args, accounts, config):
60
60
)
61
61
)
62
62
63
- for region in listdir ("data/aws/" ):
63
+ for region_name in listdir ("data/aws/" ):
64
64
# Get public images
65
- public_images_file = "data/aws/{}/ec2-describe-images.json" .format (region )
65
+ public_images_file = "data/aws/{}/ec2-describe-images.json" .format (region_name )
66
66
public_images = json .load (open (public_images_file ))
67
67
resource_filter = ".Images[]"
68
68
public_images = pyjq .all (resource_filter , public_images )
69
69
70
70
for account in accounts :
71
71
account = Account (None , account )
72
- region = Region (account , {"RegionName" : region })
72
+ region = Region (account , {"RegionName" : region_name })
73
73
74
74
instances = query_aws (account , "ec2-describe-instances" , region )
75
75
resource_filter = (
76
76
'.Reservations[].Instances[] | select(.State.Name == "running")'
77
77
)
78
78
if args .instance_filter != "" :
79
79
resource_filter += "|{}" .format (args .instance_filter )
80
+
81
+ if 'Reservations' not in instances :
82
+ print (f"** skipping: { account .name } in { region_name } " )
83
+ continue
84
+
80
85
instances = pyjq .all (resource_filter , instances )
81
86
82
87
account_images = query_aws (account , "ec2-describe-images" , region )
83
88
resource_filter = ".Images[]"
89
+ if 'Images' not in account_images :
90
+ print (f"** skipping: { account .name } in { region_name } " )
91
+ continue
84
92
account_images = pyjq .all (resource_filter , account_images )
85
93
86
94
for instance in instances :
0 commit comments