def post(self, request, *args, **kwargs): """ 垂直升级组件 --- parameters: - name: tenantName description: 租户名 required: true type: string paramType: path - name: serviceAlias description: 组件别名 required: true type: string paramType: path - name: new_memory description: 内存大小(单位:M) required: true type: int paramType: form - name: new_gpu description: gpu显存数量(单位:MiB) required: false type: int paramType: form - name: new_cpu description: cpu分配额(单位:1000=1Core) required: false type: int paramType: form """ try: new_memory = request.data.get("new_memory", 0) new_gpu = request.data.get("new_gpu", None) new_cpu = request.data.get("new_cpu", None) code, msg = app_manage_service.vertical_upgrade( self.tenant, self.service, self.user, int(new_memory), oauth_instance=self.oauth_instance, new_gpu=new_gpu, new_cpu=new_cpu) bean = {} if code != 200: return Response(general_message(code, "vertical upgrade error", msg, bean=bean), status=code) result = general_message(code, "success", "操作成功", bean=bean) except ResourceNotEnoughException as re: raise re except AccountOverdueException as re: logger.exception(re) return Response(general_message(10410, "resource is not enough", re.message), status=412) return Response(result, status=result["code"])
def post(self, request, *args, **kwargs): serializer = AppServiceTelescopicVerticalSerializer(data=request.data) serializer.is_valid(raise_exception=True) new_memory = serializer.data.get("new_memory") code, msg = app_manage_service.vertical_upgrade( self.team, self.service, self.user, int(new_memory), oauth_instance=self.oauth_instance) if code != 200: raise ServiceHandleException(status_code=code, msg="vertical upgrade error", msg_show=msg) return Response(None, status=code)
def post(self, request, *args, **kwargs): """ 垂直升级服务 --- parameters: - name: tenantName description: 租户名 required: true type: string paramType: path - name: serviceAlias description: 服务别名 required: true type: string paramType: path - name: new_memory description: 内存大小(单位:M) required: true type: int paramType: form """ try: new_memory = request.data.get("new_memory", None) if not new_memory: return Response(general_message(400, "memory is null", "请选择升级内存"), status=400) new_add_memory = (int(new_memory) * self.service.min_node) - self.service.min_node * self.service.min_memory if new_add_memory < 0: new_add_memory = 0 allow_create, tips = app_service.verify_source(self.tenant, self.service.service_region, new_add_memory, "start_app") if not allow_create: return Response(general_message(412, "resource is not enough", "资源不足,无法升级")) code, msg, event = app_manage_service.vertical_upgrade(self.tenant, self.service, self.user, int(new_memory)) 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, "vertical upgrade error", msg, bean=bean), status=code) result = general_message(code, "success", "操作成功", bean=bean) except ResourceNotEnoughException as re: logger.exception(re) return Response(general_message(10406, "resource is not enough", re.message), status=412) except Exception as e: logger.exception(e) result = error_message(e.message) return Response(result, status=result["code"])
def post(self, request, *args, **kwargs): """ 垂直升级服务 --- parameters: - name: tenantName description: 租户名 required: true type: string paramType: path - name: serviceAlias description: 服务别名 required: true type: string paramType: path - name: new_memory description: 内存大小(单位:M) required: true type: int paramType: form """ try: new_memory = request.data.get("new_memory", None) if not new_memory: return Response(general_message(400, "memory is null", "请选择升级内存"), status=400) code, msg, event = app_manage_service.vertical_upgrade( self.tenant, self.service, self.user, int(new_memory)) 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, "vertical upgrade 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"])
def post(self, request, *args, **kwargs): """ 垂直升级组件 --- parameters: - name: tenantName description: 租户名 required: true type: string paramType: path - name: serviceAlias description: 组件别名 required: true type: string paramType: path - name: new_memory description: 内存大小(单位:M) required: true type: int paramType: form """ try: new_memory = request.data.get("new_memory", None) if not new_memory: return Response(general_message(400, "memory is null", "请选择升级内存"), status=400) code, msg = app_manage_service.vertical_upgrade( self.tenant, self.service, self.user, int(new_memory)) bean = {} if code != 200: return Response(general_message(code, "vertical upgrade error", msg, bean=bean), status=code) result = general_message(code, "success", "操作成功", bean=bean) except ResourceNotEnoughException as re: raise re except AccountOverdueException as re: logger.exception(re) return Response(general_message(10410, "resource is not enough", re.message), status=412) return Response(result, status=result["code"])