def _make_ssh_cmd_default(user="******", port=22, opts='', hosts_file='/dev/null', connect_timeout=30, alive_interval=300): base_command = ("/usr/bin/ssh -a -x %s -o StrictHostKeyChecking=no " "-o UserKnownHostsFile=%s -o BatchMode=yes " "-o ConnectTimeout=%d -o ServerAliveInterval=%d " "-l %s -p %d") assert isinstance(connect_timeout, (int, long)) assert connect_timeout > 0 # can't disable the timeout return base_command % (opts, hosts_file, connect_timeout, alive_interval, user, port) make_ssh_command = utils.import_site_function( __file__, "autotest.server.hosts.site_host", "make_ssh_command", _make_ssh_cmd_default) # import site specific Host class SiteHost = utils.import_site_class( __file__, "autotest.server.hosts.site_host", "SiteHost", remote.RemoteHost) class AbstractSSHHost(SiteHost): """ This class represents a generic implementation of most of the framework necessary for controlling a host via ssh. It implements almost all of the abstract Host methods, except for the core
opts='', hosts_file='/dev/null', connect_timeout=30, alive_interval=300): base_command = ("/usr/bin/ssh -a -x %s -o StrictHostKeyChecking=no " "-o UserKnownHostsFile=%s -o BatchMode=yes " "-o ConnectTimeout=%d -o ServerAliveInterval=%d " "-l %s -p %d") assert isinstance(connect_timeout, (int, long)) assert connect_timeout > 0 # can't disable the timeout return base_command % (opts, hosts_file, connect_timeout, alive_interval, user, port) make_ssh_command = utils.import_site_function( __file__, "autotest.server.hosts.site_host", "make_ssh_command", _make_ssh_cmd_default) # import site specific Host class SiteHost = utils.import_site_class(__file__, "autotest.server.hosts.site_host", "SiteHost", remote.RemoteHost) class AbstractSSHHost(SiteHost): """ This class represents a generic implementation of most of the framework necessary for controlling a host via ssh. It implements almost all of the abstract Host methods, except for the core Host.run method. """ def _initialize(self,
import os import time import logging import shutil import gzip from autotest.client.shared import settings from autotest.server import utils # import any site hooks for the crashdump and crashinfo collection get_site_crashdumps = utils.import_site_function( __file__, "autotest.server.site_crashcollect", "get_site_crashdumps", lambda host, test_start_time: None) get_site_crashinfo = utils.import_site_function( __file__, "autotest.server.site_crashcollect", "get_site_crashinfo", lambda host, test_start_time: None) def get_crashdumps(host, test_start_time): get_site_crashdumps(host, test_start_time) def get_crashinfo(host, test_start_time): logging.info("Collecting crash information...") # include crashdumps as part of the general crashinfo get_crashdumps(host, test_start_time) if wait_for_machine_to_recover(host): # run any site-specific collection
import gzip import logging import os import shutil import time from autotest.client.shared import settings from autotest.server import utils # import any site hooks for the crashdump and crashinfo collection get_site_crashdumps = utils.import_site_function( __file__, "autotest.server.site_crashcollect", "get_site_crashdumps", lambda host, test_start_time: None) get_site_crashinfo = utils.import_site_function( __file__, "autotest.server.site_crashcollect", "get_site_crashinfo", lambda host, test_start_time: None) def get_crashdumps(host, test_start_time): get_site_crashdumps(host, test_start_time) def get_crashinfo(host, test_start_time): logging.info("Collecting crash information...") # include crashdumps as part of the general crashinfo get_crashdumps(host, test_start_time) if wait_for_machine_to_recover(host): # run any site-specific collection get_site_crashinfo(host, test_start_time)