Răsfoiți Sursa

Jenkinsfile

LuTong 1 săptămână în urmă
părinte
comite
ed759fe6a0
1 a modificat fișierele cu 19 adăugiri și 10 ștergeri
  1. 19 10
      Jenkinsfile

+ 19 - 10
Jenkinsfile

@@ -9,8 +9,7 @@ pipeline {
         SSH_CREDENTIALS_ID = 'alien-website-deploy-ssh'
         // SSH 登录用户(按服务器实际用户修改)
         DEPLOY_USER = 'root'
-        // Node 版本(需 Jenkins 安装 NodeJS 插件并配置同名工具)
-        NODEJS_TOOL = 'NodeJS-20'
+        NODE_VERSION = '20'
     }
 
     options {
@@ -28,14 +27,24 @@ pipeline {
 
         stage('Install & Build') {
             steps {
-                nodejs(nodeJSInstallationName: env.NODEJS_TOOL) {
-                    sh '''
-                        node -v
-                        npm -v
-                        npm ci
-                        npm run build
-                    '''
-                }
+                sh '''
+                    set -e
+
+                    export NVM_DIR="$HOME/.nvm"
+                    if [ ! -s "$NVM_DIR/nvm.sh" ]; then
+                        echo "安装 nvm..."
+                        curl -fsSL https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh | bash
+                    fi
+                    . "$NVM_DIR/nvm.sh"
+
+                    nvm install ${NODE_VERSION}
+                    nvm use ${NODE_VERSION}
+
+                    node -v
+                    npm -v
+                    npm ci
+                    npm run build
+                '''
             }
         }