@@ -29,18 +29,24 @@ def lambda_handler(event: Dict[str, Any], context: Any) -> str:
2929 instance_name : str = event .get ("name" , "" )
3030 state : str = "unknown"
3131
32- resp = ec2_client .describe_instance_status (InstanceIds = [instance_id ])
33- for status in resp .get ("InstanceStatuses" , []):
34- # check if running
35- state = status ["InstanceState" ].get ("Name" )
36- if state == "running" :
37- # check instance
38- if status ["InstanceStatus" ].get ("Status" ) != "ok" :
39- state = "instance_failed"
40-
41- # check system
42- if status ["SystemStatus" ].get ("Status" ) != "ok" :
43- state = "system_failed"
32+ resp = ec2_client .describe_instances (InstanceIds = [instance_id ])
33+ reservations = resp .get ("Reservations" , [])
34+ for reservation in reservations :
35+ for instance in reservation .get ("Instances" , []):
36+ state = instance .get ("State" , {}).get ("Name" )
37+
38+ # check if running
39+ if state == "running" :
40+ resp = ec2_client .describe_instance_status (InstanceIds = [instance_id ])
41+ status = resp .get ("InstanceStatuses" , [])[0 ]
42+
43+ # check instance
44+ if status ["InstanceStatus" ].get ("Status" , "" ) != "ok" :
45+ state = "instance_failed"
46+
47+ # check system
48+ if status ["SystemStatus" ].get ("Status" , "" ) != "ok" :
49+ state = "system_failed"
4450
4551 if state == "running" :
4652 MigrationStateHandler ().update_state (
0 commit comments