6104f592eb
Split monolithic docker.py into focused modules: - docker/compose.py — compose generation, execute_compose_command, volume sorting - docker/container.py — container status, IP, logs, network, port finding - docker/config_staging.py — instance dir, env file, config file staging - docker/tunnel.py — cloudflared tunnel lifecycle (moved from services/tunnel.py) - docker/__init__.py — re-exports all public symbols for backward compatibility - services/tunnel.py — thin re-export wrapper for backward compatibility Also includes schema extraction files created in prior work: - schemas/config/config_profile.py - schemas/project/*.py - schemas/system/health.py - schemas/tool/*.py - schemas/user/*.py All existing imports like 'from src.services.docker import X' and 'from src.services.tunnel import X' continue to work unchanged. Quality gates: py_compile passed, ruff passed, import test passed.
37 lines
591 B
Python
37 lines
591 B
Python
"""SSH key request/response schemas."""
|
|
|
|
import uuid
|
|
from datetime import datetime
|
|
|
|
from pydantic import BaseModel, ConfigDict
|
|
|
|
|
|
class SSHKeyCreate(BaseModel):
|
|
name: str
|
|
|
|
|
|
class SSHKeyResponse(BaseModel):
|
|
model_config = ConfigDict(from_attributes=True)
|
|
|
|
id: uuid.UUID
|
|
name: str
|
|
public_key: str
|
|
created_at: datetime
|
|
|
|
|
|
class SignPayloadRequest(BaseModel):
|
|
payload: str
|
|
|
|
|
|
class SignatureResponse(BaseModel):
|
|
signature: str
|
|
|
|
|
|
class VerifySignatureRequest(BaseModel):
|
|
payload: str
|
|
signature: str
|
|
|
|
|
|
class VerifySignatureResponse(BaseModel):
|
|
valid: bool
|