AWS Enhancement (#48)
* Fix the path registration after reset * image id * Handle lock stuff * Debug * Debug * Update * Update * Update * Update * Update * Reorder the reset steps * Reorder the reset steps * Reorder the reset steps * Finish and clean --------- Co-authored-by: XinyuanWangCS <xywang626@gmail.com>
This commit is contained in:
@@ -3,7 +3,6 @@ from botocore.exceptions import ClientError
|
||||
|
||||
import logging
|
||||
|
||||
from .manager import INSTANCE_TYPE
|
||||
from desktop_env.providers.base import Provider
|
||||
|
||||
logger = logging.getLogger("desktopenv.providers.aws.AWSProvider")
|
||||
@@ -73,7 +72,11 @@ class AWSProvider(Provider):
|
||||
subnet_id = instance['SubnetId']
|
||||
instance_type = instance['InstanceType']
|
||||
|
||||
# Step 2: Launch a new instance from the snapshot
|
||||
# Step 2: Terminate the old instance
|
||||
ec2_client.terminate_instances(InstanceIds=[path_to_vm])
|
||||
logger.info(f"Old instance {path_to_vm} has been terminated.")
|
||||
|
||||
# Step 3: Launch a new instance from the snapshot
|
||||
logger.info(f"Launching a new instance from snapshot {snapshot_name}...")
|
||||
|
||||
run_instances_params = {
|
||||
@@ -97,14 +100,8 @@ class AWSProvider(Provider):
|
||||
logger.info(f"New instance {new_instance_id} launched from snapshot {snapshot_name}.")
|
||||
logger.info(f"Waiting for instance {new_instance_id} to be running...")
|
||||
ec2_client.get_waiter('instance_running').wait(InstanceIds=[new_instance_id])
|
||||
logger.info(f"Waiting for instance {new_instance_id} status checks to pass...")
|
||||
ec2_client.get_waiter('instance_status_ok').wait(InstanceIds=[new_instance_id])
|
||||
logger.info(f"Instance {new_instance_id} is ready.")
|
||||
|
||||
# Step 3: Terminate the old instance
|
||||
ec2_client.terminate_instances(InstanceIds=[path_to_vm])
|
||||
logger.info(f"Old instance {path_to_vm} has been terminated.")
|
||||
|
||||
return new_instance_id
|
||||
|
||||
except ClientError as e:
|
||||
|
||||
Reference in New Issue
Block a user