forked from 142vip/JavaScriptCollection
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathci
More file actions
executable file
·40 lines (32 loc) · 1.07 KB
/
Copy pathci
File metadata and controls
executable file
·40 lines (32 loc) · 1.07 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
#!/bin/bash
#
# 依赖安装脚本
# 使用:
# ./scripts/ci
#
set -euo pipefail
NPM_REGISTRY="${NPM_REGISTRY:-https://registry.npmmirror.com}"
COREPACK_REGISTRY="${COREPACK_REGISTRY:-https://registry.npmjs.org}"
echo "运行命令: pnpm i --registry $NPM_REGISTRY --frozen-lockfile --force $*"
echo "COREPACK_REGISTRY: $COREPACK_REGISTRY"
if ! command -v corepack >/dev/null 2>&1; then
echo "未检测到 corepack,正在安装..."
npm i -g corepack@latest --force
else
echo "corepack 已安装,版本: $(corepack --version)"
fi
export COREPACK_ENABLE_DOWNLOAD_PROMPT=0
export COREPACK_NPM_REGISTRY="$COREPACK_REGISTRY"
if pnpm --version >/dev/null 2>&1; then
echo "pnpm 已安装,版本: $(pnpm --version)"
else
echo "正在通过 corepack 启用 pnpm..."
corepack enable pnpm || true
if ! pnpm --version >/dev/null 2>&1; then
echo "corepack 版本过低,正在升级..."
npm i -g corepack@latest --force
corepack enable pnpm
fi
echo "pnpm 已安装,版本: $(pnpm --version)"
fi
pnpm i --registry "$NPM_REGISTRY" --frozen-lockfile --force "$@"