blob: 0d0180e09630877a60c180ca82641fff7cc33b53 [file] [log] [blame]
apwde1503a2006-10-10 08:34:21 +00001"""The harness interface
2
3The interface between the client and the server when hosted.
4"""
5
6__author__ = """Copyright Andy Whitcroft 2006"""
7
8from autotest_utils import *
9import os, sys
10
11class harness:
12 """The NULL server harness
13
14 Properties:
15 job
16 The job object for this job
17 """
18
19 def __init__(self, job):
20 """
21 job
22 The job object for this job
23 """
apw4726b092007-03-12 20:35:05 +000024 self.setup(job)
25
26
27 def setup(self, job):
28 """
29 job
30 The job object for this job
31 """
apwde1503a2006-10-10 08:34:21 +000032 self.job = job
33
apw66cc4f62007-03-12 20:37:30 +000034 configd = os.path.join(os.environ['AUTODIR'], 'configs')
35 if os.path.isdir(configd):
36 (name, dirs, files) = os.walk(configd).next()
37 job.config_set('kernel.default_config_set',
38 [ configd + '/' ] + files)
39
apwde1503a2006-10-10 08:34:21 +000040
41 def run_start(self):
42 """A run within this job is starting"""
43 pass
44
45
46 def run_pause(self):
47 """A run within this job is completing (expect continue)"""
48 pass
49
50
51 def run_reboot(self):
52 """A run within this job is performing a reboot
53 (expect continue following reboot)
54 """
55 pass
56
57
mbligh61a6c1a2006-12-25 01:26:38 +000058 def run_abort(self):
59 """A run within this job is aborting. It all went wrong"""
60 pass
61
62
63 def run_complete(self):
apwde1503a2006-10-10 08:34:21 +000064 """A run within this job is completing (all done)"""
65 pass
66
67
mblighd528d302007-12-19 16:19:05 +000068 def test_status(self, status, tag):
apwde1503a2006-10-10 08:34:21 +000069 """A test within this job is completing"""
70 pass
71
72
mblighd528d302007-12-19 16:19:05 +000073 def test_status_detail(self, code, subdir, operation, status, tag):
apw4b2e4fb2007-09-25 16:52:30 +000074 """A test within this job is completing (detail)"""
75 pass
76
77
apwde1503a2006-10-10 08:34:21 +000078def select(which, job):
mbligh362ab3d2007-08-30 11:24:04 +000079 if not which:
80 which = 'standalone'
81
82 exec "import harness_%s" % (which)
83 exec "myharness = harness_%s.harness_%s(job)" % (which, which)
apwde1503a2006-10-10 08:34:21 +000084
apwde1503a2006-10-10 08:34:21 +000085 return myharness