From 62e18abddcd981e669a3fbbe7a889a6eea97cb0e Mon Sep 17 00:00:00 2001 From: "142vip.cn" Date: Tue, 24 Sep 2024 14:24:28 +0800 Subject: [PATCH] =?UTF-8?q?perf:=20=E4=BC=98=E5=8C=96`CI`=E8=84=9A?= =?UTF-8?q?=E6=9C=AC=EF=BC=8C=E5=9F=BA=E4=BA=8E`corepack`=E9=94=81?= =?UTF-8?q?=E5=AE=9A`pnpm`=E7=89=88=E6=9C=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- package.json | 14 +++----------- scripts/ci | 38 +++++++------------------------------- 2 files changed, 10 insertions(+), 42 deletions(-) diff --git a/package.json b/package.json index 7618d3b4..53169702 100644 --- a/package.json +++ b/package.json @@ -8,10 +8,10 @@ "url": "https://github.com/142vip", "homePage": "https://408.142vip.cn" }, - "packageManager": "pnpm@8.9.2", + "packageManager": "pnpm@9.6.0", "engines": { - "node": "^18.x", - "pnpm": "8" + "node": ">=18.x", + "pnpm": "9.6.0" }, "scripts": { "preinstall": "chmod +x ./scripts/*", @@ -24,14 +24,6 @@ "deploy:vercel": "vercel --prod", "clean": "find . -name \"node_modules\" -type d -exec rm -rf '{}' + " }, - "scripts-info": { - "preinstall": "在安装依赖前分配脚本权限", - "postinstall": "在安装依赖后编译markdown文档转化为思维导图", - "prepare": "安装依赖预执行脚本", - "build:mark-map": "./scripts/mark-map", - "dev": "本地启动项目", - "clean": "快速删除本地依赖" - }, "devDependencies": { "@commitlint/cli": "^18.6.1", "@commitlint/config-conventional": "^18.6.3", diff --git a/scripts/ci b/scripts/ci index 9fb8e2da..e8a64526 100755 --- a/scripts/ci +++ b/scripts/ci @@ -5,37 +5,13 @@ ## ./scripts/ci ## -# 期望的 pnpm 大版本号 -majorVersionRequired=$(grep -o '"pnpm": *"[^"]*"' package.json | awk -F'"' '{print $4}') -echo "期望的 pnpm 大版本号:$majorVersionRequired" +NPM_REGISTRY="https://mirrors.tencent.com/npm/" -# 检测 pnpm 是否已安装并且大版本号符合要求 -checkPNPMVersion() { - # 获取已安装的 pnpm 版本 - local pnpmVersionInstalled=$(pnpm --version 2>/dev/null) - if [[ $pnpmVersionInstalled =~ ^$majorVersionRequired ]]; then - echo "已安装的 pnpm 版本:$pnpmVersionInstalled" - echo "已安装的 pnpm 大版本号符合要求." - return 0 - else - echo "未安装 pnpm 或 pnpm 大版本号不符合要求." - return 1 - fi -} +## 获取所有参数 +echo "运行命令: export COREPACK_NPM_REGISTRY=$NPM_REGISTRY && corepack enable pnpm && pnpm i --registry $NPM_REGISTRY --frozen-lockfile $*" -# 安装pnpm -installRequiredPNPM(){ - npm i pnpm@$majorVersionRequired -g -} +# 导出corepack环境变量,安装pnpm版本 +export COREPACK_NPM_REGISTRY=$NPM_REGISTRY && corepack enable pnpm - -## 判断是PNPM安装且版本符合要求 -if command -v pnpm &> /dev/null && checkPNPMVersion; then - echo "无需安装 pnpm@@$majorVersionRequired" -else - echo "安装 pnpm@$majorVersionRequired..." - installRequiredPNPM; -fi - -# 安装项目依赖 -pnpm i --frozen-lockfile --registry https://registry.npmmirror.com \ No newline at end of file +# 安装项目依赖 -w -F @142vip/fairy-cli +pnpm i --registry $NPM_REGISTRY --frozen-lockfile "$@"