@@ -27,8 +27,14 @@ def get_all_instances(key_name, ar_name, region):
2727 for instance in reservation ['Instances' ]:
2828 if instance ['State' ]['Name' ]!= 'terminated' :
2929 if len (instance ['Tags' ]) > 0 :
30- tag_value = instance ['Tags' ][0 ]['Value' ]
31- if tag_value .startswith ('ar-' ):
30+ # Find the Name tag
31+ tag_value = None
32+ for tag in instance ['Tags' ]:
33+ if tag ['Key' ] == 'Name' :
34+ tag_value = tag ['Value' ]
35+ break
36+
37+ if tag_value and tag_value .startswith ('ar-' ):
3238 if (key_name in tag_value ) and (ar_name in tag_value ):
3339 instances .append (instance )
3440
@@ -38,8 +44,14 @@ def get_all_instances(key_name, ar_name, region):
3844def get_instance_by_name (ec2_name , key_name , ar_name , region ):
3945 instances = get_all_instances (key_name , ar_name , region )
4046 for instance in instances :
41- str = instance ['Tags' ][0 ]['Value' ]
42- if str == ec2_name :
47+ # Find the Name tag
48+ instance_name = None
49+ for tag in instance ['Tags' ]:
50+ if tag ['Key' ] == 'Name' :
51+ instance_name = tag ['Value' ]
52+ break
53+
54+ if instance_name == ec2_name :
4355 return instance
4456
4557def get_instances_by_ids (instance_ids , ec2_name , key_name , ar_name , region ):
0 commit comments