diff --git a/.drone.yml b/.drone.yml index d7bde78f..705caed7 100644 --- a/.drone.yml +++ b/.drone.yml @@ -47,14 +47,9 @@ steps: - corepack enable - corepack prepare pnpm@9 --activate - cd mobile - # 仓库内 pnpm-workspace.yaml 无 packages 字段,pnpm9 会直接失败;单包工程移走即可 - - mv pnpm-workspace.yaml pnpm-workspace.yaml.ci-bak 2>/dev/null || true - # pnpm-lock.yaml 被 gitignore,不能 --frozen-lockfile - # 跳过 puppeteer 下载 Chromium(H5 构建不需要,否则会卡很久) + # H5 构建不需要 Chromium - export PUPPETEER_SKIP_DOWNLOAD=1 PUPPETEER_SKIP_CHROMIUM_DOWNLOAD=1 - # 无 lockfile 时 pnpm 默认隔离布局会导致 uni 找不到 webpack/lib/DefinePlugin;改用 hoisted - - printf '%s\n' 'shamefully-hoist=true' 'node-linker=hoisted' >> .npmrc - - pnpm install --no-frozen-lockfile --registry https://registry.npmmirror.com + - pnpm install --frozen-lockfile --registry https://registry.npmmirror.com - pnpm run build - test -d dist/build/h5 - tar -C dist/build/h5 -czf "/hzdyjs-releases/${DRONE_TAG}/mobile-h5-${DRONE_TAG}.tar.gz" . diff --git a/.gitignore b/.gitignore index 120a947a..3e38ac28 100644 --- a/.gitignore +++ b/.gitignore @@ -80,7 +80,7 @@ mobile/yarn-debug.log* mobile/yarn-error.log* mobile/package-lock.json mobile/yarn.lock -mobile/pnpm-lock.yaml +# mobile/pnpm-lock.yaml 纳入仓库,保证 CI 与本地依赖树一致 # Vue 自动生成的文件 web/auto-imports.d.ts diff --git a/docs/superpowers/specs/2026-10-24-drone-tag-package-design.md b/docs/superpowers/specs/2026-10-24-drone-tag-package-design.md index 8aaf15e1..bff80fb2 100644 --- a/docs/superpowers/specs/2026-10-24-drone-tag-package-design.md +++ b/docs/superpowers/specs/2026-10-24-drone-tag-package-design.md @@ -43,8 +43,8 @@ 源文件:`backend/ruoyi-admin/target/ruoyi-admin.jar` → `backend-.jar` 2. **mobile**(`node:20-bookworm` + corepack/pnpm) - CI 先移走无效 `pnpm-workspace.yaml`,再 - `pnpm install --no-frozen-lockfile`(`pnpm-lock.yaml` 被 gitignore)→ `pnpm run build`(H5) + `pnpm install --frozen-lockfile`(仓库纳入 `mobile/pnpm-lock.yaml`;无效 `pnpm-workspace.yaml` 已删除) + → `pnpm run build`(H5);CI 设置 `PUPPETEER_SKIP_DOWNLOAD=1` 打包 `mobile/dist/build/h5` → `mobile-h5-.tar.gz` ## Maven 公共缓存