Change default strategy to DummyStrategy

The aim of this patchset is to change the default strategy
and set invoke_on_load to False.

Change-Id: I0e374993614f465b11a22e33008f7026642154ee
This commit is contained in:
Jean-Emile DARTOIS
2015-12-21 09:54:56 +01:00
parent 642226812f
commit 010bc61cc9
2 changed files with 9 additions and 6 deletions

View File

@@ -20,19 +20,25 @@ import abc
from oslo_log import log
import six
from watcher.decision_engine.strategy.strategies.dummy_strategy import \
DummyStrategy
LOG = log.getLogger(__name__)
@six.add_metaclass(abc.ABCMeta)
class BaseStrategyLoader(object):
default_strategy_cls = DummyStrategy
@abc.abstractmethod
def load_available_strategies(self):
raise NotImplementedError() # pragma:no cover
raise NotImplementedError()
def load(self, strategy_to_load=None):
strategy_selected = None
try:
available_strategies = self.load_available_strategies()
LOG.debug("Available strategies: %s ", available_strategies)
strategy_cls = available_strategies.get(
strategy_to_load, self.default_strategy_cls
)

View File

@@ -23,19 +23,16 @@ from oslo_log import log
from stevedore import ExtensionManager
from watcher.decision_engine.strategy.loading.base import BaseStrategyLoader
from watcher.decision_engine.strategy.strategies.basic_consolidation import \
BasicConsolidation
LOG = log.getLogger(__name__)
class DefaultStrategyLoader(BaseStrategyLoader):
default_strategy_cls = BasicConsolidation
def load_available_strategies(self):
extension_manager = ExtensionManager(
namespace='watcher_strategies',
invoke_on_load=True,
invoke_on_load=False,
)
return {ext.name: ext.plugin for ext in extension_manager.extensions}