]> git.apps.os.sepia.ceph.com Git - teuthology.git/commitdiff
Add a Console base class
authorZack Cerza <zack@redhat.com>
Wed, 8 Nov 2017 20:06:15 +0000 (13:06 -0700)
committerZack Cerza <zack@redhat.com>
Thu, 9 Nov 2017 00:18:33 +0000 (17:18 -0700)
Signed-off-by: Zack Cerza <zack@redhat.com>
teuthology/orchestra/console/base.py [new file with mode: 0644]
teuthology/orchestra/console/physical.py
teuthology/orchestra/console/virtual.py

diff --git a/teuthology/orchestra/console/base.py b/teuthology/orchestra/console/base.py
new file mode 100644 (file)
index 0000000..e144418
--- /dev/null
@@ -0,0 +1,28 @@
+import teuthology.orchestra.remote
+
+
+class Console(object):
+    def __init__(self, name):
+        self.name = name
+        self.shortname = teuthology.orchestra.remote.getShortName(name)
+
+    def check_power(self, state, timeout=None):
+        pass
+
+    def check_status(self, timeout=None):
+        pass
+
+    def hard_reset(self):
+        pass
+
+    def power_cycle(self):
+        pass
+
+    def power_on(self):
+        pass
+
+    def power_off(self):
+        pass
+
+    def power_off_for_interval(self, interval=30):
+        pass
index d6546ec6b747a696ba2622e31171fb0ab7613283..b9f71d7cdb801403555b607169dfc9c9be1b0382 100644 (file)
@@ -6,23 +6,20 @@ import subprocess
 import sys
 import time
 
-import teuthology.orchestra.remote
-
 from teuthology.config import config
-
 from teuthology.exceptions import ConsoleError
+from teuthology.orchestra.console.base import Console
 
 log = logging.getLogger(__name__)
 
 
-class PhysicalConsole():
+class PhysicalConsole(Console):
     """
     Physical Console (set from getRemoteConsole)
     """
     def __init__(self, name, ipmiuser=None, ipmipass=None, ipmidomain=None,
                  logfile=None, timeout=20):
-        self.name = name
-        self.shortname = teuthology.orchestra.remote.getShortName(name)
+        super(PhysicalConsole, self).__init__(name)
         self.timeout = timeout
         self.logfile = None
         self.ipmiuser = ipmiuser or config.ipmi_user
index a89f51a18fb048eb426a3178335fd91e41c41122..8905501e34dc64a0c626935ee8c903bc7f840f69 100644 (file)
@@ -5,21 +5,23 @@ try:
 except ImportError:
     libvirt = None
 
+from teuthology.orchestra.console.base import Console
+
 import teuthology.lock.query
 import teuthology.lock.util
 
 log = logging.getLogger(__name__)
 
 
-class VirtualConsole():
+class VirtualConsole(Console):
     """
     Virtual Console (set from getRemoteConsole)
     """
     def __init__(self, name):
+        super(VirtualConsole, self).__init__(name)
         if libvirt is None:
             raise RuntimeError("libvirt not found")
 
-        self.shortname = remote.getShortName(name)
         status_info = teuthology.lock.query.get_status(self.shortname)
         try:
             if teuthology.lock.query.is_vm(status=status_info):