コード例 #1
0
    def list_config_groups(self,
                           region_name,
                           app_id,
                           page,
                           page_size,
                           query=None):
        cgroup_info = []
        config_groups = app_config_group_repo.list(region_name, app_id)
        if query:
            config_groups = config_groups.filter(
                config_group_name__contains=query)
        p = Paginator(config_groups, page_size)
        total = p.count
        for cgroup in p.page(page):
            config_group_info = build_response(cgroup)
            cgroup_info.append(config_group_info)

        return cgroup_info, total
コード例 #2
0
 def list(self, region_name, app_id):
     cgroup_info = {}
     config_groups = app_config_group_repo.list(region_name, app_id)
     for cgroup in config_groups:
         items = app_config_group_item_repo.list(cgroup.config_group_id)
         config_items = {item.item_key: item.item_value for item in items}
         cgroup_services = app_config_group_service_repo.list(
             cgroup.config_group_id)
         cgroup_service_ids = [
             cgroup_service.service_id for cgroup_service in cgroup_services
         ]
         cgroup_info.update({
             cgroup.config_group_name: {
                 "config_items": config_items,
                 "component_ids": cgroup_service_ids
             }
         })
     return cgroup_info
コード例 #3
0
 def _config_groups(self):
     """
     only add
     """
     config_groups = list(
         app_config_group_repo.list(self.region_name, self.app_id))
     config_group_names = [cg.config_group_name for cg in config_groups]
     tmpl = self.app_template.get(
         "app_config_groups") if self.app_template.get(
             "app_config_groups") else []
     for cg in tmpl:
         if cg["name"] in config_group_names:
             continue
         config_group = ApplicationConfigGroup(
             app_id=self.app_id,
             config_group_name=cg["name"],
             deploy_type=cg["injection_type"],
             enable=True,  # always true
             region_name=self.region_name,
             config_group_id=make_uuid(),
         )
         config_groups.append(config_group)
     return config_groups
コード例 #4
0
 def _config_groups(self):
     return list(app_config_group_repo.list(self.region_name, self.app_id))