You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
swarms/api/terminate.py

31 lines
974 B

#!/bin/python3
# rewrite this to aslo cancel-spot-instance-requests
import boto3
# Create an EC2 client
ec2_client = boto3.client('ec2')
# Retrieve instance IDs
response = ec2_client.describe_instances()
for reservation in response['Reservations'] :
for instance in reservation['Instances']:
print( instance)
instance_ids = [instance['InstanceId']
for reservation in response['Reservations']
for instance in reservation['Instances']]
# Terminate instances
for instance_id in instance_ids:
print(f"Terminating instance: {instance_id}")
ec2_client.terminate_instances(InstanceIds=[instance_id])
# Check the status of the terminated instances
terminated_instances = ec2_client.describe_instances(InstanceIds=instance_ids)
for reservation in terminated_instances['Reservations']:
for instance in reservation['Instances']:
print(f"Instance ID: {instance['InstanceId']}, State: {instance['State']['Name']}")