def __save_volume(self, tenant, service, volumes): if volumes: volume_service.delete_service_volumes(service) index = 0 for volume in volumes: index += 1 volume_name = service.service_alias.upper() + "_" + str(index) if "file_content" in list(volume.keys()): volume_service.add_service_volume(tenant, service, volume["volume_path"], volume["volume_type"], volume_name, volume["file_content"]) else: settings = {} settings["volume_capacity"] = volume["volume_capacity"] try: volume_service.add_service_volume( tenant, service, volume["volume_path"], volume["volume_type"], volume_name, None, settings) except ErrVolumePath: logger.warning("Volume Path {0} error".format( volume["volume_path"])) return 200, "success"
def __save_volume(self, tenant, service, volumes): if volumes: volume_service.delete_service_volumes(service) index = 0 for volume in volumes: index += 1 volume_name = service.service_alias.upper() + "_" + str(index) if "file_content" in volume.keys(): code, msg, volume_data = volume_service.add_service_volume( tenant, service, volume["volume_path"], volume["volume_type"], volume_name, volume["file_content"]) if code != 200: logger.error( "service.check", "save service check info port error {0}".format( msg)) # return code, msg else: code, msg, volume_data = volume_service.add_service_volume( tenant, service, volume["volume_path"], volume["volume_type"], volume_name) if code != 200: logger.error( "service.check", "save service check info port error {0}".format( msg)) # return code, msg return 200, "success"
def __save_volume(self, tenant, service, volumes): if not volumes: return 200, "success" for volume in volumes: if "file_content" in volume.keys(): code, msg, volume_data = volume_service.add_service_volume( tenant, service, volume["volume_path"], volume["volume_type"], volume["volume_name"], ["file_content"]) else: code, msg, volume_data = volume_service.add_service_volume( tenant, service, volume["volume_path"], volume["volume_type"], volume["volume_name"]) if code != 200: logger.error("save market app volume error".format(msg)) return code, msg return 200, "success"
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: volume_name description: 持久化名称 required: true type: string paramType: form - name: volume_type description: 持久化类型 required: true type: string paramType: form - name: volume_path description: 持久化路径 required: true type: string paramType: form """ volume_name = request.data.get("volume_name", None) volume_type = request.data.get("volume_type", None) volume_path = request.data.get("volume_path", None) file_content = request.data.get("file_content", None) volume_capacity = request.data.get("volume_capacity", 0) provider_name = request.data.get("volume_provider_name", '') access_mode = request.data.get("access_mode", '') share_policy = request.data.get('share_policy', '') backup_policy = request.data.get('back_policy', '') reclaim_policy = request.data.get('reclaim_policy', '') # TODO fanyangyang 使用serialer进行参数校验 allow_expansion = request.data.get('allow_expansion', False) settings = {} settings['volume_capacity'] = volume_capacity settings['provider_name'] = provider_name settings['access_mode'] = access_mode settings['share_policy'] = share_policy settings['backup_policy'] = backup_policy settings['reclaim_policy'] = reclaim_policy settings['allow_expansion'] = allow_expansion data = volume_service.add_service_volume(self.tenant, self.service, volume_path, volume_type, volume_name, file_content, settings, self.user.nick_name) result = general_message(200, "success", "持久化路径添加成功", bean=data.to_dict()) 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: volume_name description: 持久化名称 required: true type: string paramType: form - name: volume_type description: 持久化类型 required: true type: string paramType: form - name: volume_path description: 持久化路径 required: true type: string paramType: form """ volume_name = request.data.get("volume_name", None) volume_type = request.data.get("volume_type", None) volume_path = request.data.get("volume_path", None) file_content = request.data.get("file_content", None) try: code, msg, data = volume_service.add_service_volume( self.tenant, self.service, volume_path, volume_type, volume_name, file_content) if code != 200: result = general_message(code, "add volume error", msg) return Response(result, status=code) result = general_message(code, msg, u"持久化路径添加成功", bean=data.to_dict()) except Exception as e: logger.exception(e) result = error_message(e.message) return Response(result, status=result["code"])
def __save_volume(self, tenant, service, volumes): if volumes: volume_service.delete_service_volumes(service) index = 0 for volume in volumes: index += 1 volume_name = service.service_alias.upper() + "_" + str(index) if "file_content" in volume.keys(): volume_service.add_service_volume(tenant, service, volume["volume_path"], volume["volume_type"], volume_name, volume["file_content"]) else: settings = {} settings["volume_capacity"] = volume["volume_capacity"] volume_service.add_service_volume(tenant, service, volume["volume_path"], volume["volume_type"], volume_name, None, settings) return 200, "success"
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: volume_name description: 持久化名称 required: true type: string paramType: form - name: volume_type description: 持久化类型 required: true type: string paramType: form - name: volume_path description: 持久化路径 required: true type: string paramType: form """ volume_name = request.data.get("volume_name", None) r = re.compile('(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$') if not r.match(volume_name): raise AbortRequest(msg="volume name illegal", msg_show="持久化名称只支持数字字母下划线") volume_type = request.data.get("volume_type", None) volume_path = request.data.get("volume_path", None) file_content = request.data.get("file_content", None) volume_capacity = request.data.get("volume_capacity", 0) provider_name = request.data.get("volume_provider_name", '') access_mode = request.data.get("access_mode", '') share_policy = request.data.get('share_policy', '') backup_policy = request.data.get('back_policy', '') reclaim_policy = request.data.get( 'reclaim_policy', '') # TODO fanyangyang 使用serialer进行参数校验 allow_expansion = request.data.get('allow_expansion', False) mode = request.data.get("mode") if mode is not None: mode = ensure_volume_mode(mode) settings = {} settings['volume_capacity'] = volume_capacity settings['provider_name'] = provider_name settings['access_mode'] = access_mode settings['share_policy'] = share_policy settings['backup_policy'] = backup_policy settings['reclaim_policy'] = reclaim_policy settings['allow_expansion'] = allow_expansion data = volume_service.add_service_volume(self.tenant, self.service, volume_path, volume_type, volume_name, file_content, settings, self.user.nick_name, mode=mode) result = general_message(200, "success", "持久化路径添加成功", bean=data.to_dict()) return Response(result, status=result["code"])