Ejemplo n.º 1
0
    def test_etcd_resolve_nonexisting(self):
        etcd_client_mock = FakeEtcdClient(self.etcd_content)
        uuid = "apache-uuid-1"

        resolver = ServiceInstanceNameResolver(etcd_client_mock)
        result = resolver.resolve("nonexisting")
        assert result is None
Ejemplo n.º 2
0
    def test_etcd_resolve_with_dot_service_ending(self):
        etcd_client_mock = FakeEtcdClient(self.etcd_content)
        uuid = "apache-uuid-3"

        resolver = ServiceInstanceNameResolver(etcd_client_mock)
        result = resolver.resolve(uuid)
        expected_result = "apache_instance_name_3.service"
        assert result == expected_result
Ejemplo n.º 3
0
    def __init__(self, configuration, exit_flag):
        self._exit_flag = exit_flag
        self._logger = logging.getLogger(__name__)
        self._logger.info("Initialized scaling engine with configuration %s",
                          repr(configuration))

        self._services_dictionary = configuration.services_dictionary
        self._metrics_receiver = configuration.metrics_receiver
        self._metrics = ScalingMetrics()
        self._rule_checker = RuleChecker(configuration.scaling_policies,
                                         configuration.services_dictionary)
        self._executed_tasks_receiver = configuration.executed_task_receiver
        self._scaling_action_sender = configuration.scaling_action_sender
        atexit.register(self._on_engine_shutdown)
        self._running_services_registry = RunningServicesRegistry(
            configuration.services_dictionary)
        instance_name_resolver = ServiceInstanceNameResolver(
            configuration.etcd_connection)
        self._service_instance_name_resolver = CachingServiceInstanceNameResolver(
            instance_name_resolver)