Class: TddDeploy::HostConnection

Inherits:
TestBase show all
Defined in:
lib/tdd_deploy/host_tests/host_connection.rb

Overview

TddDeploy::HostConnection

tests that hosts are pingable and that the current user can log in as both ‘host_admin’ and ‘root’

Constant Summary

Constants included from Assertions

Assertions::GROUP_ELT_TAG, Assertions::HEADER_ELT_TAG, Assertions::RESULT_ELT_TAG

Constants included from Environ

Environ::ENV_FNAME

Instance Method Summary collapse

Methods inherited from TestBase

flush_children_methods, inherited, #initialze

Methods inherited from Base

#initialize

Methods included from DeployTestMethods

#deploy_test_file_exists_on_hosts_as, #deploy_test_on_a_host_as, #deploy_test_on_hosts_as, #deploy_test_process_running_on_hosts_as

Methods included from RunMethods

#ping_host, #run_locally, #run_on_a_host_as, #run_on_all_hosts, #run_on_all_hosts_as, #run_on_hosts_as

Methods included from Assertions

#assert, #assert_equal, #assert_match, #assert_nil, #assert_not_nil, #assert_raises, #fail, #failure_count, #failure_messages, #formatted_test_results, #pass, #refute, #refute_equal, #refute_nil, #remove_failed_tests, #reset_tests, #test_count, #test_messages, #test_results, #total_failures, #total_tests

Methods included from CopyMethods

#append_dir_to_remote_hosts_as, #append_file_to_remote_file_as, #append_file_to_remote_hosts_as, #append_string_to_remote_file_as, #append_string_to_remote_file_on_hosts_as, #copy_dir_to_remote_hosts_as, #copy_file_to_remote_as, #copy_file_to_remote_hosts_as, #copy_string_to_remote_file_as, #copy_string_to_remote_file_on_hosts_as, #mkdir_on_remote_as

Methods included from Environ

#capfile, #clear_env, #env_defaults, #env_desc, #env_hash, #env_hash=, #env_types, #hosts, #hosts=, #list_to_str, #migration_hosts, #rationalize_host_list, #read_env, #reset_env, #save_env, #set_env, #str_to_list

Constructor Details

This class inherits a constructor from TddDeploy::Base

Instance Method Details

#pingObject

ping - pings all hosts



9
10
11
12
13
14
15
# File 'lib/tdd_deploy/host_tests/host_connection.rb', line 9

def ping
  result = true
  self.hosts.each do |host|
    result &= assert host, ping_host(host), "Host #{host} should respond to ping"
   end
   result
end

#ssh_loginObject

ssh_login - attempts to log in as host_admin on all hosts from current user



18
19
20
21
22
# File 'lib/tdd_deploy/host_tests/host_connection.rb', line 18

def 
  deploy_test_on_hosts_as self.host_admin, self.hosts, "/home/#{self.host_admin}\n", "should be able to connect via ssh" do
    'pwd'
  end
end

#ssh_login_as_rootObject

ssh_login_as_root - attempts to log in as root on all hosts from current user



25
26
27
28
29
# File 'lib/tdd_deploy/host_tests/host_connection.rb', line 25

def 
  deploy_test_on_hosts_as 'root', self.hosts, '/root', "Should be able to connect as root via ssh" do
    'pwd'
  end
end