def post(self, request, *args, **kwargs): """ 添加组信息 --- parameters: - name: tenantName description: 租户名 required: true type: string paramType: path - name: group_name description: 组名称 required: true type: string paramType: form """ try: group_name = request.data.get("group_name", None) code, msg, data = group_service.add_group(self.tenant, self.response_region, group_name) if code != 200: result = general_message(code, "group add error", msg) else: result = general_message(code, "success", msg, bean=data.to_dict()) except Exception as e: logger.exception(e) result = error_message(e.message) return Response(result, status=result["code"])
def post(self, request, *args, **kwargs): serializer = AppPostInfoSerializer(data=request.data) serializer.is_valid(raise_exception=True) data = serializer.data group_info = group_service.add_group(self.team, self.region_name, data["app_name"], data.get("app_note")) re = AppBaseInfoSerializer(group_info) return Response(re.data, status=status.HTTP_201_CREATED)
def post(self, request, *args, **kwargs): """ docker-compose创建应用 --- parameters: - name: tenantName description: 租户名 required: true type: string paramType: path - name: group_name description: 应用组名称 required: true type: string paramType: form - name: yaml_content description: compose文件内容 required: true type: string paramType: form """ group_name = request.data.get("group_name", None) yaml_content = request.data.get("yaml_content", "") try: if not group_name: return Response(general_message(400, 'params error', "请指明需要创建的compose组名"), status=400) if not yaml_content: return Response(general_message(400, "params error", "未指明yaml内容"), status=400) code, msg, json_data = compose_service.yaml_to_json(yaml_content) if code != 200: return Response(general_message(code, "parse yaml error", msg), status=code) # 创建组 code, msg, group_info = group_service.add_group(self.tenant, self.response_region, group_name) if code != 200: return Response(general_message(code, "create group error", msg), status=code) code, msg, group_compose = compose_service.create_group_compose(self.tenant, self.response_region, group_info.ID, json_data) if code != 200: return Response(general_message(code, "create group compose error", msg), status=code) bean = dict() bean["group_id"] = group_compose.group_id bean["compose_id"] = group_compose.compose_id bean["group_name"] = group_info.group_name result = general_message(200, "operation success", "compose组创建成功", bean=bean) except Exception as e: logger.exception(e) result = error_message() return Response(result, status=result["code"])
def post(self, request, *args, **kwargs): """ 添加应用信息 --- parameters: - name: tenantName description: 租户名 required: true type: string paramType: path - name: group_name description: 应用名称 required: true type: string paramType: form - name: group_note description: 应用备注 required: false type: string paramType: form """ try: group_name = request.data.get("group_name", None) group_note = request.data.get("group_note", "") if group_note and len(group_note) > 2048: return Response(general_message(400, "node too long", "应用备注长度限制2048"), status=400) data = group_service.add_group(self.tenant, self.response_region, group_name, group_note) bean = { "group_note": data.note, "region_name": data.region_name, "tenant_id": data.tenant_id, "group_name": data.group_name, "is_default": data.is_default, "group_id": data.ID, } result = general_message(200, "success", "创建成功", bean=bean) except ServiceHandleException as e: result = general_message(400, e.msg, e.msg_show) return Response(result, status=400) except Exception as e: logger.exception(e) result = error_message(e.message) return Response(result, status=result["code"])
def post(self, request, *args, **kwargs): serializer = AppPostInfoSerializer(data=request.data) serializer.is_valid(raise_exception=True) data = serializer.data logger.info(data["team_alias"]) tenant = team_services.get_tenant_by_tenant_name(data["team_alias"]) if not tenant: raise serializers.ValidationError("指定租户不存在") if not region_services.verify_team_region( team_name=data["team_alias"], region_name=data["region_name"]): raise serializers.ValidationError("指定数据中心租户未开通") code, msg, group_info = group_service.add_group( tenant, data["region_name"], data["app_name"]) if not group_info: return Response(FailSerializer({"msg": msg}).data, status=code) re = AppBaseInfoSerializer(group_info) return Response(re.data, status=status.HTTP_201_CREATED)
def post(self, request, *args, **kwargs): """ docker-compose创建组件 --- parameters: - name: tenantName description: 租户名 required: true type: string paramType: path - name: group_name description: 应用名称 required: true type: string paramType: form - name: user_name description: 镜像仓库名称 required: true type: string paramType: form - name: password description: 镜像仓库密码 required: true type: string paramType: form - name: yaml_content description: compose文件内容 required: true type: string paramType: form """ group_name = request.data.get("group_name", None) hub_user = request.data.get("user_name", "") hub_pass = request.data.get("password", "") yaml_content = request.data.get("yaml_content", "") group_note = request.data.get("group_note", "") if group_note and len(group_note) > 2048: return Response(general_message(400, "node too long", "应用备注长度限制2048"), status=400) if not group_name: return Response(general_message(400, 'params error', "请指明需要创建的compose组名"), status=400) if not yaml_content: return Response(general_message(400, "params error", "未指明yaml内容"), status=400) # Parsing yaml determines whether the input is illegal code, msg, json_data = compose_service.yaml_to_json(yaml_content) if code != 200: return Response(general_message(code, "parse yaml error", msg), status=code) # 创建组 group_info = group_service.add_group(self.tenant, self.response_region, group_name, group_note) code, msg, group_compose = compose_service.create_group_compose( self.tenant, self.response_region, group_info.ID, yaml_content, hub_user, hub_pass) if code != 200: return Response(general_message(code, "create group compose error", msg), status=code) bean = dict() bean["group_id"] = group_compose.group_id bean["compose_id"] = group_compose.compose_id bean["group_name"] = group_info.group_name result = general_message(200, "operation success", "compose组创建成功", bean=bean) return Response(result, status=result["code"])