gcx/backend
hailin 7933f3fe4a perf(upload): replace MinIO presigned-URL flow with local-disk storage
Previously the APK/IPA upload required two full public-internet transfers:
  1. POST /parse  → browser → gateway → admin-service (full file, for metadata)
  2. PUT presigned → browser → oss.gogenex.com / MinIO    (full file, to store)

Now follows the same pattern as RWADurian admin-service:
  - Single multipart POST /admin/versions/upload
  - admin-service parses buffer in-memory (yauzl / unzipper)
  - Saves to local disk (UPLOAD_DIR env, default ./uploads)
  - Download served via existing GET /app/version/download/:id (streams local file)

Changes:
  - file-storage.service.ts: drop minio dep, use fs/promises + crypto
  - admin-version.controller.ts: POST upload now accepts multipart file,
    removes GET presigned-url endpoint (no longer needed)
  - version.repository.ts (frontend): single FormData POST, removes
    three-step presigned-URL flow

Result: file crosses public internet once instead of twice.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-07 05:49:36 -08:00
..
kong feat(kong): 添加 referral-service 路由 /api/v1/referral 2026-03-04 01:03:32 -08:00
migrations feat(telemetry): 完整实现 presence-service 迁移 + Flutter 遥测接入 2026-03-05 23:33:13 -08:00
packages fix(auth): add local JwtStrategy to all services, fix @genex/common import 2026-03-04 23:00:39 -08:00
scripts fix: RegexRouter 精确匹配 outbox 表,防止 heartbeat 事件污染消费者 2026-02-15 07:04:17 -08:00
services perf(upload): replace MinIO presigned-URL flow with local-disk storage 2026-03-07 05:49:36 -08:00
.dockerignore feat(docker): 重构Monorepo构建 — 支持@genex/common共享包 2026-02-19 19:00:27 -08:00
.env.example feat(auth): SMS 模板按类型分发 + 阿里云 8 模板配置 2026-03-03 05:13:16 -08:00
deploy.sh feat: 新增 deploy.sh 部署管理脚本体系 — 后端主控+12服务独立+区块链 2026-02-19 17:13:09 -08:00
docker-compose.yml fix(admin-service): use oss.gogenex.com (128.14.98.146) for MinIO 2026-03-07 04:16:15 -08:00