Add SARscape SBAS prepared stack workflow
This commit is contained in:
@@ -3,7 +3,7 @@ from __future__ import annotations
|
||||
import asyncio
|
||||
import os
|
||||
import re as _re
|
||||
from typing import Any, Dict, Optional
|
||||
from typing import Any, Dict, List, Optional
|
||||
|
||||
from fastapi import APIRouter, Depends, HTTPException
|
||||
from pydantic import BaseModel, Field
|
||||
@@ -55,6 +55,12 @@ class ExtractDispRequest(BaseModel):
|
||||
dest_dir: Optional[str] = None
|
||||
|
||||
|
||||
class SarscapeSbasInspectRequest(BaseModel):
|
||||
task_names: Optional[List[str]] = None
|
||||
include_parameters: bool = False
|
||||
timeout_seconds: Optional[int] = Field(default=120, ge=10, le=600)
|
||||
|
||||
|
||||
def _normalize_existing_dir(path: Optional[str]) -> Optional[str]:
|
||||
text = str(path or "").strip()
|
||||
if not text:
|
||||
@@ -162,6 +168,22 @@ async def inspect_dinsar_endpoint(
|
||||
return envi_service.inspect_dinsar(request.root_dir)
|
||||
|
||||
|
||||
@router.post("/idl/inspect/sarscape-sbas")
|
||||
async def inspect_sarscape_sbas_endpoint(
|
||||
request: SarscapeSbasInspectRequest,
|
||||
admin_user: AuthUserORM = Depends(_require_admin),
|
||||
):
|
||||
_ = admin_user
|
||||
try:
|
||||
return envi_service.inspect_sarscape_sbas_tasks_subprocess(
|
||||
request.task_names,
|
||||
timeout_seconds=request.timeout_seconds or 120,
|
||||
include_parameters=bool(request.include_parameters),
|
||||
)
|
||||
except Exception as exc:
|
||||
raise HTTPException(status_code=500, detail=str(exc)) from exc
|
||||
|
||||
|
||||
@router.post("/idl/jobs/import")
|
||||
async def run_import_job_endpoint(
|
||||
request: ImportJobRequest,
|
||||
|
||||
Reference in New Issue
Block a user