示例#1
0
    def init_etcdctl(self, arg_etcd_endpoint):
        etcdctl = ETCDCTL.create_etcdctl(arg_etcd_endpoint)

        if etcdctl is not None:
            return etcdctl
        else:
            return None
示例#2
0
    def _init_etcdctl(self, arg_etcd_endpoint):
        etcdctl = ETCDCTL.create_etcdctl(arg_etcd_endpoint)

        if etcdctl is not None:
            return etcdctl
        else:
            return None
示例#3
0
    def init_from_etcd(self, etcd_endpoint):

        etcdctl = ETCDCTL.create_etcdctl(etcd_endpoint)

        if etcdctl is not None:
            res = etcdctl.read(ETCDCTL.etcd_key_init_application_configuration)
            dynamite_config_str = res.value

            if dynamite_config_str is not None and isinstance(dynamite_config_str, str):
                dynamite_yaml_config = json.loads(dynamite_config_str)
                self.set_instance_variables(dynamite_yaml_config)

        else:
            return None
示例#4
0
    def init_from_etcd(self, etcd_endpoint):

        etcdctl = ETCDCTL.create_etcdctl(etcd_endpoint)

        if etcdctl is not None:
            res = etcdctl.read(ETCDCTL.etcd_key_init_application_configuration)
            dynamite_config_str = res.value

            if dynamite_config_str is not None and isinstance(
                    dynamite_config_str, str):
                dynamite_yaml_config = json.loads(dynamite_config_str)
                self.set_instance_variables(dynamite_yaml_config)

        else:
            return None
示例#5
0
    def create_fleet_service_dict_from_etcd(self, etcd_endpoint):
        etcdctl = ETCDCTL.create_etcdctl(etcd_endpoint)

        if etcdctl is not None:
            r = etcdctl.read(ETCDCTL.etcd_key_running_services, recursive=True, sorted=True)

            fleet_service_dict = {}
            fleet_service_instance_list = []

            for service in r.children:

                service_path_parts = service.key.split("/")

                # name in fleet_service_dict
                service_name = service_path_parts[-2]

                # name in fleet_service_instances dict
                instance_name = service_path_parts[-1]

                if instance_name == "fleet_service_template":
                    #print(service.value)
                    value = json.loads(service.value)
                    fleet_service = FleetService.dict_to_instance(value)
                    fleet_service_dict[fleet_service.name] = fleet_service
                else:
                    value = json.loads(service.value)
                    fleet_service_instance = FleetService.FleetServiceInstance.dict_to_instance(value)
                    fleet_service_instance_list.append(fleet_service_instance)

            for fleet_service_instance in fleet_service_instance_list:
                if "@" in fleet_service_instance.name:
                    service_name = fleet_service_instance.name.split("@")[0]
                else:
                    service_name = fleet_service_instance.name.replace(".service", "")

                fleet_service_dict[service_name].fleet_service_instances[fleet_service_instance.name] = fleet_service_instance

            return fleet_service_dict

        else:
            return None
示例#6
0
    def create_fleet_service_dict_from_etcd(self, etcd_endpoint):
        etcdctl = ETCDCTL.create_etcdctl(etcd_endpoint)

        if etcdctl is not None:
            r = etcdctl.read(ETCDCTL.etcd_key_running_services, recursive=True, sorted=True)

            fleet_service_dict = {}
            fleet_service_instance_list = []

            for service in r.children:

                service_path_parts = service.key.split("/")

                # name in fleet_service_dict
                service_name = service_path_parts[-2]

                # name in fleet_service_instances dict
                instance_name = service_path_parts[-1]

                if instance_name == "fleet_service_template":
                    #print(service.value)
                    value = json.loads(service.value)
                    fleet_service = FleetService.dict_to_instance(value)
                    fleet_service_dict[fleet_service.name] = fleet_service
                else:
                    value = json.loads(service.value)
                    fleet_service_instance = FleetService.FleetServiceInstance.dict_to_instance(value)
                    fleet_service_instance_list.append(fleet_service_instance)

            for fleet_service_instance in fleet_service_instance_list:
                if "@" in fleet_service_instance.name:
                    service_name = fleet_service_instance.name.split("@")[0]
                else:
                    service_name = fleet_service_instance.name.replace(".service", "")

                fleet_service_dict[service_name].fleet_service_instances[fleet_service_instance.name] = fleet_service_instance

            return fleet_service_dict

        else:
            return None
示例#7
0
import argparse
import os
import platform
import yaml
import json
import requests
import etcd

from dynamite.INIT.DynamiteConfig import DynamiteConfig
from dynamite.INIT.DynamiteServiceHandler import DynamiteServiceHandler
from intervaltree import Interval, IntervalTree
from dynamite.GENERAL.FleetService import FleetService

from dynamite.GENERAL import ETCDCTL

etcdctl = ETCDCTL.create_etcdctl("127.0.0.1:4001")


class Test(object):
    def to_json_string(self):

        instance_dict = {}

        for variable, value in self.__dict__.items():
            instance_dict[variable] = value

        return json.dumps(instance_dict)

    def __init__(self):
        self.x = 12
        self.y = 13
示例#8
0
import argparse
import os
import platform
import yaml
import json
import requests
import etcd

from dynamite.INIT.DynamiteConfig import DynamiteConfig
from dynamite.INIT.DynamiteServiceHandler import DynamiteServiceHandler
from intervaltree import Interval, IntervalTree
from dynamite.GENERAL.FleetService import FleetService

from dynamite.GENERAL import ETCDCTL

etcdctl = ETCDCTL.create_etcdctl("127.0.0.1:4001")

class Test(object):

    def to_json_string(self):

        instance_dict = {}

        for variable, value in self.__dict__.items():
            instance_dict[variable] = value

        return json.dumps(instance_dict)

    def __init__(self):
        self.x = 12
        self.y = 13
示例#9
0
 def __init__(self, configuration):
     self._metrics_base_path = configuration.metrics_path
     self._services_base_path = configuration.services_path
     self._etcdctl = ETCDCTL.create_etcdctl(str(configuration.etcd_endpoint))
示例#10
0
 def _init_etcdctl(self, etcd_endpoint):
     etcdctl = ETCDCTL.create_etcdctl(etcd_endpoint)
     return etcdctl
示例#11
0
 def __init__(self, configuration):
     self._metrics_base_path = configuration.metrics_path
     self._services_base_path = configuration.services_path
     self._etcdctl = ETCDCTL.create_etcdctl(str(
         configuration.etcd_endpoint))
示例#12
0
 def _init_etcdctl(self, etcd_endpoint):
     etcdctl = ETCDCTL.create_etcdctl(etcd_endpoint)
     return etcdctl