예제 #1
0
    def _config_backend_sections(self):
        details = self.specs.get_details()
        routes = self.specs.get_routes()
        vhosts = self.specs.get_vhosts()
        cfg = OrderedDict()

        if not self.specs.get_vhosts():
            services_aliases = [None]
        else:
            services_aliases = self.specs.get_service_aliases()

        for service_alias in services_aliases:
            backend = BackendHelper.get_backend_section(
                details, routes, vhosts, service_alias, self.routes_added)

            if not service_alias:
                if self.require_default_route:
                    cfg["backend default_service"] = backend
            else:
                if get_service_attribute(details, "virtual_host",
                                         service_alias):
                    cfg["backend SERVICE_%s" % service_alias] = backend
                else:
                    cfg["backend default_service"] = backend
        return cfg
    def _config_backend_sections(self):
        logger.info("_config_backend_sections:")
        details = self.specs.get_details()
        routes = self.specs.get_routes()
        vhosts = self.specs.get_vhosts()
        cfg = OrderedDict()

        if not self.specs.get_vhosts():
            services_aliases = [None]
        else:
            services_aliases = self.specs.get_service_aliases()
        logger.info("services_aliases: %s", services_aliases)
        for service_alias in services_aliases:
            backend = BackendHelper.get_backend_section(details, routes, vhosts, service_alias, self.routes_added)
            logger.info("backend %s", backend)
            logger.info("BackendHelper.check_backend_has_routes(backend): %s", BackendHelper.check_backend_has_routes(backend))
            # if BackendHelper.check_backend_has_routes(backend):
            if not service_alias:
                logger.info("not service_alias: %s", not service_alias)
                if self.require_default_route:
                    cfg["backend default_service"] = backend
            else:
                logger.info("service_alias: %s", service_alias)
                if get_service_attribute(details, "virtual_host", service_alias):
                    logger.info("get_service_attribute: returns true")
                    cfg["backend SERVICE_%s" % service_alias] = backend
                else:
                    logger.info("get_service_attribute: returns false")
                    cfg["backend default_service"] = backend
        return cfg
예제 #3
0
    def _config_tcp_sections(self):
        details = self.specs.get_details()
        services_aliases = self.specs.get_service_aliases()

        cfg = OrderedDict()
        if not get_service_attribute(details, "tcp_ports"):
            return cfg

        tcp_ports = TcpHelper.get_tcp_port_list(details, services_aliases)

        for tcp_port in set(tcp_ports):
            tcp_section, port_num = self.get_tcp_section(details, services_aliases, tcp_port)
            cfg["listen port_%s" % port_num] = tcp_section
        return cfg
예제 #4
0
    def _config_backend_sections(self):
        details = self.specs.get_details()
        routes = self.specs.get_routes()
        vhosts = self.specs.get_vhosts()
        cfg = OrderedDict()

        if not self.specs.get_vhosts():
            services_aliases = [None]
        else:
            services_aliases = self.specs.get_service_aliases()

        for service_alias in services_aliases:
            backend = BackendHelper.get_backend_section(details, routes, vhosts, service_alias, self.routes_added)

            if not service_alias:
                if self.require_default_route:
                    cfg["backend default_service"] = backend
            else:
                if get_service_attribute(details, "virtual_host", service_alias):
                    cfg["backend SERVICE_%s" % service_alias] = backend
                else:
                    cfg["backend default_service"] = backend
        return cfg