fix package path and move files under doctor_tests
[doctor.git] / doctor_tests / installer / base.py
diff --git a/doctor_tests/installer/base.py b/doctor_tests/installer/base.py
new file mode 100644 (file)
index 0000000..fa39816
--- /dev/null
@@ -0,0 +1,36 @@
+##############################################################################
+# Copyright (c) 2017 ZTE Corporation and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+import abc
+import six
+
+@six.add_metaclass(abc.ABCMeta)
+class BaseInstaller(object):
+    def __init__(self, conf, log):
+        self.conf = conf
+        self.log = log
+
+    @abc.abstractproperty
+    def node_user_name(self):
+        """user name for login to cloud node"""
+
+    @abc.abstractmethod
+    def get_ssh_key_from_installer(self):
+        pass
+
+    @abc.abstractmethod
+    def get_host_ip_from_hostname(self, hostname):
+        pass
+
+    @abc.abstractmethod
+    def setup(self):
+        pass
+
+    @abc.abstractmethod
+    def cleanup(self):
+        pass