Class: OpenPortCheckerVm::CheckingInternetServices

Inherits:
OpenPortCheckerState show all
Defined in:
lib/scripts/vCloud/open_port_checker_vm.rb

Overview

Got all internet services. Go through them and check the ports.

Instance Attribute Summary

Attributes inherited from ScriptExecutionState

#context, #logger

Instance Method Summary collapse

Methods inherited from OpenPortCheckerState

load_state

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

#retrieve_ip_services

Constructor Details

This class inherits a constructor from ScriptExecutionState

Instance Method Details

#enterObject



48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
# File 'lib/scripts/vCloud/open_port_checker_vm.rb', line 48

def enter
  @context[:result][:port_checks] = []
  @context[:vcloud_internet_services].each() do |is|
    port = is[:port]
    ip = is[:ip]
    identifier = is[:id]
    begin
      result = @context[:remote_command_handler].is_port_open?(ip, port)
      post_message("check port #{port} on IP #{ip} => #{result ? "successful" : "failed"}")
    rescue Exception => e
      @logger.warn("exception during executing port check: #{e}")
    end
    @context[:result][:port_checks] << {:ip => ip, :id => identifier,
      :port => port, :success => result
    }
  end
  AnalysisDone.new(@context)
end