Пример #1
0
    def test_conf_dumper_modiy_container(self):
        dumper = ContainerDumper(
            ContainerDumper.MODIFY_CONTAINER,
            container_name='fake-buk-0-m',
            sub_types=['update__env_data'])
        dumped_json = dumper.dumps()
        dumped_config = json.loads(dumped_json)
        self.assertEqual(
            dumped_config, {
                "op_type": "modify_container",
                "containers": {
                    "fake-buk-0-m": {
                        "basedir": "/data/reach",
                        "env_data": {
                            "CURRENT_EPOCH": 10,
                            "CNF": "redis.conf"
                        },
                        "image_name": "docker-redis",
                        "service_name": "fake-rserv"
                    }
                },
                "ops": [{
                    "update__env_data": {
                        "#O#": "#O#"
                    }
                }]
            })

        dumper = ContainerDumper(
            ContainerDumper.MODIFY_CONTAINER,
            container_name='fake-buk-0-m',
            sub_types=['set__image_name'])
        dumped_json = dumper.dumps()
        dumped_config = json.loads(dumped_json)
        self.assertEqual(
            dumped_config, {
                "op_type": "modify_container",
                "containers": {
                    "fake-buk-0-m": {
                        "basedir": "/data/reach",
                        "env_data": {
                            "CURRENT_EPOCH": 10,
                            "CNF": "redis.conf"
                        },
                        "image_name": "docker-redis",
                        "service_name": "fake-rserv"
                    }
                },
                "ops": [{
                    "set__image_name": "#O#"
                }]
            })
Пример #2
0
    def test_conf_dumper_get_all_containers(self):
        dumper = ContainerDumper(ContainerDumper.GET_ALL_CONTAINERS, self.cluster1.name, 'redis')
        dumped_json = dumper.dumps()
        dumped_config = json.loads(dumped_json)
        self.assertEqual(
            dumped_config,
            {
                "op_type": "get_all_containers",
                "containers": {
                    "fake-buk-0-m": {
                        "basedir": "/data/reach",
                        "env_data": {"CURRENT_EPOCH": 10, "CNF": "redis.conf"},
                        "image_name": "docker-redis",
                        "service_name": "fake-rserv"
                    },
                    "fake-buk-0-s": {
                        "basedir": "/data/reach",
                        "env_data": {"CURRENT_EPOCH": 10, "CNF": "redis.conf"},
                        "image_name": "docker-redis",
                        "service_name": "fake-rserv"
                    },
                    "fake-buk-1-m": {
                        "basedir": "/data/reach",
                        "env_data": {"CURRENT_EPOCH": 10, "CNF": "redis.conf"},
                        "image_name": "docker-redis",
                        "service_name": "fake-rserv"
                    },
                    "fake-buk-1-s": {
                        "basedir": "/data/reach",
                        "env_data": {"CURRENT_EPOCH": 10, "CNF": "redis.conf"},
                        "image_name": "docker-redis",
                        "service_name": "fake-rserv"
                    }
                }
            }
        )

        dumper = ContainerDumper(ContainerDumper.GET_ALL_CONTAINERS, self.cluster1.name, 'sentinel')
        dumped_json = dumper.dumps()
        dumped_config = json.loads(dumped_json)
        self.assertEqual(
            dumped_config,
            {
                "op_type": "get_all_containers",
                "containers": {
                    "fake-senti-0": {
                        "basedir": "/data/reach",
                        "env_data": {"CURRENT_EPOCH": 10, "CNF": "sentinel.conf"},
                        "image_name": "docker-sentinel",
                        "service_name": "fake-sserv"
                    },
                    "fake-senti-1": {
                        "basedir": "/data/reach",
                        "env_data": {"CURRENT_EPOCH": 10, "CNF": "sentinel.conf"},
                        "image_name": "docker-sentinel",
                        "service_name": "fake-sserv"
                    },
                    "fake-senti-2": {
                        "basedir": "/data/reach",
                        "env_data": {"CURRENT_EPOCH": 10, "CNF": "sentinel.conf"},
                        "image_name": "docker-sentinel",
                        "service_name": "fake-sserv"
                    }
                }
            }
        )

        dumper = ContainerDumper(ContainerDumper.GET_ALL_CONTAINERS, self.cluster1.name, 'twemproxy')
        dumped_json = dumper.dumps()
        dumped_config = json.loads(dumped_json)
        self.assertEqual(
            dumped_config,
            {
                "op_type": "get_all_containers",
                "containers": {
                    "fake-twemp-192.168.31.102-6300": {
                        "basedir": "/data/reach",
                        "env_data": {"GLOBAL_ETC_DIR": "/tmp/redis", "CNF": "twemproxy.conf"},
                        "image_name": "docker-twemproxy",
                        "service_name": "fake-tserv"
                    }
                }
            }
        )