- Scheme 配置新增 displayName 字段,下拉框和任务列表显示友好名称 - Ad_Hoc 类型显示下载二维码,App_Store 类型显示 IPA 下载链接 - 新增 error_category 错误分类(证书/描述文件/编译/依赖等) - 打包服务增加详细错误分析和分类
61 lines
1.3 KiB
Python
61 lines
1.3 KiB
Python
"""Pydantic 模型"""
|
|
from datetime import datetime
|
|
from typing import Optional
|
|
from pydantic import BaseModel
|
|
|
|
|
|
# 打包任务
|
|
class TaskCreate(BaseModel):
|
|
app_id: str
|
|
build_type: str
|
|
scheme_id: str
|
|
obfuscation: bool = False
|
|
branch: str = "main"
|
|
|
|
|
|
class TaskResponse(BaseModel):
|
|
id: str
|
|
app_id: str
|
|
app_name: str
|
|
build_type: str
|
|
scheme_id: str
|
|
scheme_name: str
|
|
obfuscation: bool
|
|
branch: str
|
|
status: str
|
|
current_step: Optional[str]
|
|
created_at: Optional[datetime]
|
|
started_at: Optional[datetime]
|
|
completed_at: Optional[datetime]
|
|
ipa_path: Optional[str]
|
|
oss_url: Optional[str]
|
|
dsym_path: Optional[str]
|
|
obfuscation_maps_path: Optional[str]
|
|
qr_code_path: Optional[str]
|
|
build_dir: Optional[str]
|
|
error_message: Optional[str]
|
|
error_category: Optional[str] = None
|
|
config_json: Optional[str]
|
|
|
|
class Config:
|
|
from_attributes = True
|
|
|
|
|
|
# 登录
|
|
class LoginRequest(BaseModel):
|
|
username: str
|
|
password: str
|
|
|
|
|
|
class LoginResponse(BaseModel):
|
|
token: str
|
|
username: str
|
|
is_admin: bool
|
|
|
|
|
|
# 打包配置
|
|
class BuildConfigUpdate(BaseModel):
|
|
max_concurrent_builds: Optional[int] = None
|
|
build_dir_retention_hours: Optional[int] = None
|
|
build_base_dir: Optional[str] = None
|