Пример #1
0
    def create_services(self, region_name, tenant, user, service_alias, service_infos):
        # get temporary service
        temporary_service = service_repo.get_service_by_tenant_and_alias(tenant.tenant_id, service_alias)
        if not temporary_service:
            return 11005, "service not found", "组件不存在", -1

        group_id = service_group_relation_repo.get_group_id_by_service(temporary_service)

        # save services
        code, msg = self.save_multi_services(
            region_name=region_name,
            tenant=tenant,
            group_id=group_id,
            service=temporary_service,
            user=user,
            service_infos=service_infos)
        if code != 200:
            return code, msg, "创建多组件应用失败", -1

        code, msg = app_manage_service.delete(user, tenant, temporary_service, True)
        if code != 200:
            return code, "Service id: " + temporary_service.service_id + ";error \
                deleting temporary service", msg, -1

        return 200, "successfully create the multi-services", "成功创建多组件应用", group_id
Пример #2
0
    def delete(self, request, *args, **kwargs):
        """
        删除组件
        ---
        parameters:
            - name: tenantName
              description: 租户名
              required: true
              type: string
              paramType: path
            - name: serviceAlias
              description: 组件别名
              required: true
              type: string
              paramType: path
            - name: is_force
              description: true直接删除,false进入回收站
              required: true
              type: boolean
              paramType: form

        """
        is_force = request.data.get("is_force", False)

        code, msg = app_manage_service.delete(self.user, self.tenant,
                                              self.service, is_force)
        bean = {}
        if code != 200:
            return Response(general_message(code,
                                            "delete service error",
                                            msg,
                                            bean=bean),
                            status=code)
        result = general_message(code, "success", "操作成功", bean=bean)
        return Response(result, status=result["code"])
Пример #3
0
    def create_services(self, region_name, tenant, user, service_alias,
                        service_infos):
        # get temporary service
        temporary_service = service_repo.get_service_by_tenant_and_alias(
            tenant.tenant_id, service_alias)
        if not temporary_service:
            raise AbortRequest("service not found",
                               "组件不存在",
                               status_code=404,
                               error_code=11005)

        group_id = service_group_relation_repo.get_group_id_by_service(
            temporary_service)

        # save services
        service_ids = self.save_multi_services(region_name=region_name,
                                               tenant=tenant,
                                               group_id=group_id,
                                               service=temporary_service,
                                               user=user,
                                               service_infos=service_infos)

        code, msg = app_manage_service.delete(user, tenant, temporary_service,
                                              True)
        if code != 200:
            raise AbortRequest("Service id: " + temporary_service.service_id +
                               "; error deleting temporary service",
                               msg,
                               status_code=400,
                               error_code=code)

        return group_id, service_ids
Пример #4
0
 def delete(self, req, app_id, service_id, *args, **kwargs):
     try:
         force = int(req.GET.get("force", 0))
     except ValueError:
         raise ServiceHandleException(msg='force value error', msg_show="参数错误")
     code, msg = app_manage_service.delete(self.user, self.team, self.service, True)
     if code != 200 and force:
         app_manage_service.delete_again(self.user, self.team, self.service, is_force=True)
     msg_dict = dict()
     msg_dict['status'] = code
     msg_dict['msg'] = msg
     msg_dict['service_id'] = self.service.service_id
     msg_dict['service_cname'] = self.service.service_cname
     if code != 200:
         raise ServiceHandleException(msg="delete error", msg_show=msg, status_code=code)
     return Response(None, status=status.HTTP_200_OK)
Пример #5
0
    def delete(self, request, *args, **kwargs):
        """
        删除服务
        ---
        parameters:
            - name: tenantName
              description: 租户名
              required: true
              type: string
              paramType: path
            - name: serviceAlias
              description: 服务别名
              required: true
              type: string
              paramType: path
            - name: is_force
              description: true直接删除,false进入回收站
              required: true
              type: boolean
              paramType: form

        """
        try:
            is_force = request.data.get("is_force", False)

            code, msg, event = app_manage_service.delete(
                self.user, self.tenant, self.service, is_force)
            bean = {}
            if event:
                bean = event.to_dict()
                bean["type_cn"] = event_service.translate_event_type(
                    event.type)
            if code != 200:
                return Response(general_message(code,
                                                "delete service error",
                                                msg,
                                                bean=bean),
                                status=code)
            result = general_message(code, "success", "操作成功", bean=bean)
        except Exception as e:
            logger.exception(e)
            result = error_message(e.message)
        return Response(result, status=result["code"])