iOSBuildServer/CLAUDE.md
shen 0ba16635df docs: 更新文档反映多用户系统,移除冗余钉钉通知
- README 补充多用户管理、JWT 认证、Web 管理配置等文档
- .env.example 添加 JWT_SECRET 配置
- 移除 notification.py(钉钉通知由 AutoPacking 处理)
- 添加 CLAUDE.md 项目上下文
2026-06-08 22:07:35 +08:00

1.4 KiB

iOS Build Server

FastAPI + Vue 3 iOS app auto-packaging service. Supports Ad_Hoc and App_Store builds with web UI, real-time logs, multi-user auth, and health monitoring.

Tech Stack

  • Backend: Python 3.9+, FastAPI, SQLAlchemy (SQLite), JWT auth
  • Frontend: Vue 3, Vite, Vue Router
  • Tests: pytest (backend), vitest (frontend)
  • Deploy: macOS launchd, deploy.sh management script

Key Commands

./start.sh              # Dev mode (backend + frontend hot reload)
./deploy.sh build       # Install deps + build frontend
./deploy.sh start/stop/restart/status
./deploy.sh test        # Run all tests (backend + frontend)

Architecture

  • backend/routers/ — API routes: auth, users, config, apps, tasks
  • backend/services/ — build_service (packaging), build_queue (async queue), log_streamer (WebSocket)
  • backend/deps.py — JWT auth dependency used by all protected routes
  • backend/config.py — loads .env, defines all config constants
  • frontend/src/views/ — BuildView, HistoryView, ConfigView
  • config.json — runtime config (apps, schemes, servers, upload, branches) managed via web UI

Conventions

  • All backend routes require JWT auth except /api/auth/login and /api/health
  • Admin-only routes: user management (/api/users/*)
  • Config stored in config.json (apps/schemes/servers), .env (infra), SQLite build_config table (build settings)
  • Chinese UI and documentation throughout