コード例 #1
0
ファイル: DynamiteINIT.py プロジェクト: sandorkan/dynamite
    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
ファイル: DynamiteINIT.py プロジェクト: Cloudxtreme/dynamite
    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
ファイル: DynamiteConfig.py プロジェクト: oezs/dynamite
    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
ファイル: play.py プロジェクト: carriercomm/dynamite
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
ファイル: EventWriter.py プロジェクト: carriercomm/dynamite
 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
ファイル: EventWriter.py プロジェクト: Cloudxtreme/dynamite
 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