Class: DownloadSnapshot::DownloadStoppedState
- Inherits:
-
DownloadSnapshotState
- Object
- ScriptExecutionState
- DownloadSnapshotState
- DownloadSnapshot::DownloadStoppedState
- Defined in:
- lib/scripts/ec2/download_snapshot.rb
Overview
Snapshot can no longer be downloaded. Shut down the instance.
Instance Attribute Summary
Attributes inherited from ScriptExecutionState
Instance Method Summary collapse
Methods inherited from DownloadSnapshotState
Methods inherited from ScriptExecutionState
#done?, #end_state, #failed?, #get_superclass_name, #initialize, #register_state_change_listener, #start_state_machine, #to_s
Methods included from StateTransitionHelper
#attach_volume, #connect, #copy_distribution, #create_fs, #create_image_from_instance, #create_labeled_fs, #create_security_group_with_rules, #create_snapshot, #create_volume, #create_volume_from_snapshot, #delete_security_group, #delete_snapshot, #delete_volume, #describe_instance, #detach_volume, #determine_file, #disable_ssh_tty, #disconnect, #ec2_handler, #ec2_handler=, #enable_ssh_tty, #get_aws_kernel_image_aki, #get_aws_region_from_endpoint, #get_partition_count, #get_partition_fs_type, #get_partition_fs_type_and_label, #get_partition_label, #get_partition_table, #get_root_device_name, #get_root_partition_fs_type, #get_root_partition_fs_type_and_label, #get_root_partition_label, #get_root_volume_id, #launch_instance, #local_decompress_and_dump_file_to_device, #local_dump_and_compress_device_to_file, #local_dump_device_to_file, #local_dump_file_to_device, #mount_fs, #mount_fs_old, #register_snapshot, #remote_copy, #remote_copy_old, #remote_handler, #remote_handler=, #retrieve_instances, #retrieve_security_groups, #set_partition_table, #shut_down_instance, #snapshot_accessible, #start_instance, #stop_instance, #unmount_fs, #upload_file, #zip_volume
Methods included from VCloudTransitionHelper
Constructor Details
This class inherits a constructor from ScriptExecutionState
Instance Method Details
#enter ⇒ Object
216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 |
# File 'lib/scripts/ec2/download_snapshot.rb', line 216 def enter error = [] begin shut_down_instance(@context[:instance_id]) rescue Exception => e error << e ("Unable to shutdown instance '#{@context[:instance_id]}': #{e.to_s}") end #XXX: delete Security Group according to its name if @context[:security_group_name].eql?(Ec2Script::CS_SEC_GRP_NAME) begin delete_security_group(@context[:security_group_name]) rescue Exception => e error << e ("Unable to delete Security Group '#{@context[:security_group_name]}': #{e.to_s}") end end begin delete_volume(@context[:source_volume_id]) rescue Exception => e error << e ("Unable to delete volume '#{@context[:source_volume_id]}': #{e.to_s}") end begin delete_volume(@context[:dest_volume_id]) rescue Exception => e error << e ("Unable to delete volume '#{@context[:dest_volume_id]}': #{e.to_s}") end if error.size() > 0 raise Exception.new("Cleanup error(s)") end Done.new(@context) end |