in lib/taste_tester/host.rb [75:128]
def test
logger.warn("Taste-testing on #{@name}")
if TasteTester::Config.use_ssh_tunnels
TasteTester::Tunnel.kill(@name)
@tunnel.run
end
serialized_config = Base64.encode64(config).delete("\n")
transport = get_transport
transport << we_testing
if TasteTester::Config.windows_target
add_windows_test_cmds(transport, serialized_config)
else
add_sane_os_test_cmds(transport, serialized_config)
end
transport << we_testing
status, output = transport.run
case status
when 0
nil
when 42
fail TasteTester::Exceptions::AlreadyTestingError, output.chomp
else
transport.error!
end
cmds = TasteTester::Hooks.test_remote_cmds(
TasteTester::Config.dryrun,
@name,
)
if cmds&.any?
transport = get_transport
cmds.each { |c| transport << c }
transport.run!
end
end