From cc5f5f587b36fd3e4816f37c6dd8cc9b070ca5dd Mon Sep 17 00:00:00 2001 From: xiangning Date: Mon, 11 May 2026 02:37:14 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20Jenkinsfile=20=E9=80=82=E9=85=8D?= =?UTF-8?q?=E6=97=A0=20Node.js=20=E7=8E=AF=E5=A2=83?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 通过 nvm 安装 Node.js(Jenkins 容器内无预装) - 所有 sh 步骤 source nvm 确保 node/pnpm 可用 - cleanWs() 替换为 deleteDir()(ws-cleanup 插件未安装) --- Jenkinsfile | 36 ++++++++++++++++++++++++------------ 1 file changed, 24 insertions(+), 12 deletions(-) diff --git a/Jenkinsfile b/Jenkinsfile index e4a4021..9e04343 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -3,30 +3,42 @@ pipeline { environment { NODE_VERSION = '22' - PNPM_VERSION = '10' + NVM_DIR = "$HOME/.nvm" } stages { + stage('Setup Node.js') { + steps { + sh ''' + if ! command -v node &> /dev/null; then + curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.3/install.sh | bash + . "$NVM_DIR/nvm.sh" + nvm install $NODE_VERSION + nvm use $NODE_VERSION + fi + . "$NVM_DIR/nvm.sh" + node -v + npm install -g pnpm@10 + pnpm -v + ''' + } + } + stage('Install') { steps { sh ''' - if ! command -v pnpm &> /dev/null; then - npm install -g pnpm@${PNPM_VERSION} - fi + . "$NVM_DIR/nvm.sh" pnpm install --frozen-lockfile ''' } } - stage('Lint') { - steps { - sh 'pnpm run lint || true' - } - } - stage('Build') { steps { - sh 'pnpm run build:antd' + sh ''' + . "$NVM_DIR/nvm.sh" + pnpm run build:antd + ''' } } @@ -45,7 +57,7 @@ pipeline { echo 'Frontend build failed!' } always { - cleanWs() + deleteDir() } } }