Loading mcp_module/json_templates/app_register_app_definition_request.json +5 −0 Original line number Diff line number Diff line Loading @@ -6,6 +6,11 @@ "type": "PRIVATEREPO", "imagePath": "" }, "requiredResources": { "infraKind": "container", "numCPU": "100m", "memory": 512 }, "componentSpec": [ { "componentName": "", Loading mcp_module/models/edge_application_models.py +10 −0 Original line number Diff line number Diff line Loading @@ -9,6 +9,16 @@ class RegisterAppDefinitionInput(BaseModel): ) imagePath: str = Field(..., min_length=1) port: int = Field(..., ge=1, le=65535) numCPU: str | None = Field( default=None, min_length=1, description="Optional CPU request, for example 100m or 1", ) memory: int | None = Field( default=None, ge=1, description="Optional memory request in MB", ) @field_validator("packageType", mode="before") @classmethod Loading mcp_module/tools/edge_application.py +7 −0 Original line number Diff line number Diff line Loading @@ -99,6 +99,8 @@ async def register_app_definition(inp: RegisterAppDefinitionInput) -> dict: - packageType: HELM_CHART or CONTAINER - imagePath: image or Helm chart URL - port: exposed TCP port - numCPU: optional CPU request - memory: optional memory request in MB """ template_path = ( root_dir / "json_templates" / "app_register_app_definition_request.json" Loading @@ -115,6 +117,11 @@ async def register_app_definition(inp: RegisterAppDefinitionInput) -> dict: payload["appRepo"]["imagePath"] = inp.imagePath payload["componentSpec"][0]["componentName"] = app_name payload["componentSpec"][0]["networkInterfaces"][0]["port"] = inp.port required_resources = payload.setdefault("requiredResources", {}) if inp.numCPU is not None: required_resources["numCPU"] = inp.numCPU if inp.memory is not None: required_resources["memory"] = inp.memory url = f"{get_session_service_url()}/apps" headers = {"accept": "application/json", "content-type": "application/json"} Loading Loading
mcp_module/json_templates/app_register_app_definition_request.json +5 −0 Original line number Diff line number Diff line Loading @@ -6,6 +6,11 @@ "type": "PRIVATEREPO", "imagePath": "" }, "requiredResources": { "infraKind": "container", "numCPU": "100m", "memory": 512 }, "componentSpec": [ { "componentName": "", Loading
mcp_module/models/edge_application_models.py +10 −0 Original line number Diff line number Diff line Loading @@ -9,6 +9,16 @@ class RegisterAppDefinitionInput(BaseModel): ) imagePath: str = Field(..., min_length=1) port: int = Field(..., ge=1, le=65535) numCPU: str | None = Field( default=None, min_length=1, description="Optional CPU request, for example 100m or 1", ) memory: int | None = Field( default=None, ge=1, description="Optional memory request in MB", ) @field_validator("packageType", mode="before") @classmethod Loading
mcp_module/tools/edge_application.py +7 −0 Original line number Diff line number Diff line Loading @@ -99,6 +99,8 @@ async def register_app_definition(inp: RegisterAppDefinitionInput) -> dict: - packageType: HELM_CHART or CONTAINER - imagePath: image or Helm chart URL - port: exposed TCP port - numCPU: optional CPU request - memory: optional memory request in MB """ template_path = ( root_dir / "json_templates" / "app_register_app_definition_request.json" Loading @@ -115,6 +117,11 @@ async def register_app_definition(inp: RegisterAppDefinitionInput) -> dict: payload["appRepo"]["imagePath"] = inp.imagePath payload["componentSpec"][0]["componentName"] = app_name payload["componentSpec"][0]["networkInterfaces"][0]["port"] = inp.port required_resources = payload.setdefault("requiredResources", {}) if inp.numCPU is not None: required_resources["numCPU"] = inp.numCPU if inp.memory is not None: required_resources["memory"] = inp.memory url = f"{get_session_service_url()}/apps" headers = {"accept": "application/json", "content-type": "application/json"} Loading