feat: stabilize multi-region runtime sync and worker orchestration

This commit is contained in:
root
2026-04-27 15:48:12 +08:00
parent 7cbde2aa78
commit 215a364891
137 changed files with 31931 additions and 1943 deletions

View File

@@ -31,6 +31,11 @@ from app.services.ops_job_service import (
sync_managed_nodes_from_cluster,
upsert_managed_node,
)
from app.services.ops_migration_service import (
execute_ops_migration,
get_ops_migration_source_profile,
preview_ops_migration,
)
from app.services.ops_playbook_service import (
cancel_ops_playbook_run,
execute_ops_playbook,
@@ -80,6 +85,23 @@ def ops_overview() -> ApiResponse:
return ApiResponse(data=get_ops_overview())
@router.get("/ops/migration/source-profile", response_model=ApiResponse)
def ops_migration_source_profile() -> ApiResponse:
return ApiResponse(data=get_ops_migration_source_profile())
@router.post("/ops/migration/preview", response_model=ApiResponse)
def ops_migration_preview(payload: dict | None = None) -> ApiResponse:
ok, message, data = preview_ops_migration(payload or {})
return ApiResponse(code=0 if ok else 1, message=message, data=data)
@router.post("/ops/migration/execute", response_model=ApiResponse)
def ops_migration_execute(payload: dict | None = None) -> ApiResponse:
ok, message, data = execute_ops_migration(payload or {})
return ApiResponse(code=0 if ok else 1, message=message, data=data)
@router.get("/ops/link-snapshot", response_model=ApiResponse)
def ops_link_snapshot() -> ApiResponse:
return ApiResponse(data=get_ops_link_snapshot())