Gabriel Adrian Samfira 8 лет назад
Родитель
Сommit
63614891c9

+ 3 - 4
coriolis/events.py

@@ -4,13 +4,13 @@
 import abc
 import collections
 
+from six import with_metaclass
 
 _PercStepData = collections.namedtuple(
     "_PercStepData", "last_value max_value perc_threshold message_format")
 
 
-class EventManager(object):
-    __metaclass__ = abc.ABCMeta
+class EventManager(object, with_metaclass(abc.ABCMeta)):
 
     def __init__(self, event_handler):
         self._event_handler = event_handler
@@ -62,8 +62,7 @@ class EventManager(object):
             self._event_handler.error(message)
 
 
-class BaseEventHandler(object):
-    __metaclass__ = abc.ABCMeta
+class BaseEventHandler(object, with_metaclass(abc.ABCMeta)):
 
     @abc.abstractmethod
     def progress_update(self, current_step, total_steps, message):

+ 6 - 5
coriolis/osmorphing/base.py

@@ -7,11 +7,12 @@ import os
 import re
 import uuid
 
+from six import with_metaclass
+
 from coriolis import utils
 
 
-class BaseOSMorphingTools(object):
-    __metaclass__ = abc.ABCMeta
+class BaseOSMorphingTools(object, with_metaclass(abc.ABCMeta)):
 
     def __init__(
             self, conn, os_root_dir, os_root_device, hypervisor,
@@ -66,8 +67,8 @@ class BaseOSMorphingTools(object):
         self._environment = environment
 
 
-class BaseLinuxOSMorphingTools(BaseOSMorphingTools):
-    __metaclass__ = abc.ABCMeta
+class BaseLinuxOSMorphingTools(BaseOSMorphingTools,
+                               with_metaclass(abc.ABCMeta)):
 
     _packages = {}
 
@@ -131,7 +132,7 @@ class BaseLinuxOSMorphingTools(BaseOSMorphingTools):
         try:
             self._exec_cmd_chroot("id -u %s" % username)
             return True
-        except:
+        except Exception:
             return False
 
     def _write_file_sudo(self, chroot_path, content):

+ 2 - 2
coriolis/osmorphing/osmount/base.py

@@ -7,6 +7,7 @@ import re
 
 from oslo_log import log as logging
 import paramiko
+from six import with_metaclass
 
 from coriolis import exception
 from coriolis import utils
@@ -14,8 +15,7 @@ from coriolis import utils
 LOG = logging.getLogger(__name__)
 
 
-class BaseOSMountTools(object):
-    __metaclass__ = abc.ABCMeta
+class BaseOSMountTools(object, with_metaclass(abc.ABCMeta)):
 
     def __init__(self, connection_info, event_manager, ignore_devices):
         self._event_manager = event_manager

+ 3 - 2
coriolis/providers/backup_writers.py

@@ -9,6 +9,7 @@ import threading
 
 from oslo_log import log as logging
 import paramiko
+from six import with_metaclass
 
 from coriolis import data_transfer
 from coriolis import exception
@@ -17,7 +18,7 @@ from coriolis import utils
 LOG = logging.getLogger(__name__)
 
 
-class BaseBackupWriterImpl(metaclass=abc.ABCMeta):
+class BaseBackupWriterImpl(with_metaclass(abc.ABCMeta)):
     def __init__(self, path, disk_id):
         self._path = path
         self._disk_id = disk_id
@@ -46,7 +47,7 @@ class BaseBackupWriterImpl(metaclass=abc.ABCMeta):
         pass
 
 
-class BaseBackupWriter(metaclass=abc.ABCMeta):
+class BaseBackupWriter(with_metaclass(abc.ABCMeta)):
     @abc.abstractmethod
     def _get_impl(self, path, disk_id):
         pass

+ 16 - 20
coriolis/providers/base.py

@@ -5,22 +5,21 @@ import abc
 import itertools
 
 from oslo_log import log as logging
+from six import with_metaclass
 
 from coriolis import exception
 
 LOG = logging.getLogger(__name__)
 
 
-class BaseProvider(object):
-    __metaclass__ = abc.ABCMeta
+class BaseProvider(object, with_metaclass(abc.ABCMeta)):
 
     @property
     def platform(self):
         raise NotImplementedError("Missing provider platform attribute.")
 
 
-class BaseEndpointProvider(BaseProvider):
-    __metaclass__ = abc.ABCMeta
+class BaseEndpointProvider(BaseProvider, with_metaclass(abc.ABCMeta)):
 
     @abc.abstractmethod
     def validate_connection(self, ctxt, connection_info):
@@ -31,9 +30,9 @@ class BaseEndpointProvider(BaseProvider):
         pass
 
 
-class BaseEndpointInstancesProvider(BaseEndpointProvider):
+class BaseEndpointInstancesProvider(BaseEndpointProvider,
+                                    with_metaclass(abc.ABCMeta)):
     """ Defines operations for listing instances off of Endpoints """
-    __metaclass__ = abc.ABCMeta
 
     @abc.abstractmethod
     def get_instances(self, ctxt, connection_info, limit=None,
@@ -47,9 +46,8 @@ class BaseEndpointInstancesProvider(BaseEndpointProvider):
         raise NotImplementedError()
 
 
-class BaseEndpointNetworksProvider(object):
+class BaseEndpointNetworksProvider(object, with_metaclass(abc.ABCMeta)):
     """ Defines operations for endpoints networks """
-    __metaclass__ = abc.ABCMeta
 
     @abc.abstractmethod
     def get_networks(self, ctxt, connection_info, env):
@@ -57,15 +55,14 @@ class BaseEndpointNetworksProvider(object):
         raise NotImplementedError()
 
 
-class BaseInstanceProvider(BaseProvider):
-    __metaclass__ = abc.ABCMeta
+class BaseInstanceProvider(BaseProvider, with_metaclass(abc.ABCMeta)):
 
     def get_os_morphing_tools(self, conn, osmorphing_info):
         raise exception.OSMorphingToolsNotFound()
 
 
-class BaseImportInstanceProvider(BaseInstanceProvider):
-    __metaclass__ = abc.ABCMeta
+class BaseImportInstanceProvider(BaseInstanceProvider,
+                                 with_metaclass(abc.ABCMeta)):
 
     @abc.abstractmethod
     def get_target_environment_schema(self):
@@ -90,8 +87,8 @@ class BaseImportInstanceProvider(BaseInstanceProvider):
         pass
 
 
-class BaseImportProvider(BaseImportInstanceProvider):
-    __metaclass__ = abc.ABCMeta
+class BaseImportProvider(BaseImportInstanceProvider,
+                         with_metaclass(abc.ABCMeta)):
 
     @abc.abstractmethod
     def import_instance(self, ctxt, connection_info, target_environment,
@@ -123,8 +120,8 @@ class BaseImportProvider(BaseImportInstanceProvider):
         pass
 
 
-class BaseReplicaImportProvider(BaseImportInstanceProvider):
-    __metaclass__ = abc.ABCMeta
+class BaseReplicaImportProvider(BaseImportInstanceProvider,
+                                with_metaclass(abc.ABCMeta)):
 
     @abc.abstractmethod
     def deploy_replica_instance(self, ctxt, connection_info,
@@ -177,8 +174,7 @@ class BaseReplicaImportProvider(BaseImportInstanceProvider):
         pass
 
 
-class BaseExportProvider(BaseInstanceProvider):
-    __metaclass__ = abc.ABCMeta
+class BaseExportProvider(BaseInstanceProvider, with_metaclass(abc.ABCMeta)):
 
     @abc.abstractmethod
     def export_instance(self, ctxt, connection_info, instance_name,
@@ -189,8 +185,8 @@ class BaseExportProvider(BaseInstanceProvider):
         pass
 
 
-class BaseReplicaExportProvider(BaseInstanceProvider):
-    __metaclass__ = abc.ABCMeta
+class BaseReplicaExportProvider(BaseInstanceProvider,
+                                with_metaclass(abc.ABCMeta)):
 
     @abc.abstractmethod
     def get_replica_instance_info(self, ctxt, connection_info, instance_name):

+ 4 - 1
coriolis/tasks/base.py

@@ -8,6 +8,9 @@ from coriolis import utils
 from oslo_config import cfg
 from oslo_log import log as logging
 
+from six import with_metaclass
+
+
 serialization_opts = [
     cfg.StrOpt('temp_keypair_password',
                default=None,
@@ -19,7 +22,7 @@ CONF.register_opts(serialization_opts, 'serialization')
 LOG = logging.getLogger(__name__)
 
 
-class TaskRunner(metaclass=abc.ABCMeta):
+class TaskRunner(with_metaclass(abc.ABCMeta)):
     @abc.abstractmethod
     def run(self, ctxt, instance, origin, destination, task_info,
             event_handler):