pipeline { agent any tools { nodejs "node-v20.10.0" } stages { stage('拉取代码') { steps { echo '开始拉取代码' checkout scmGit(branches: [[name: '*/main']], extensions: [], userRemoteConfigs: [[credentialsId: '3', url: 'http://175.6.124.250:3100/luozhun/policeSecurity.git']]) echo '代码拉取成功' } } stage('构建前端项目') { steps{ echo '开始构建前端项目' sh 'cd /var/jenkins_home/workspace/警保联动-超级后台/superManagement && npm install --registry=https://registry.npmmirror.com && npm run build' echo '前端项目构建完成' } } stage('ssh远程推送代码'){ steps{ echo '开始推送构建产物' script{ def remote = [:] remote.name = 'server-118.253.177.137' remote.host = '118.253.177.137' remote.port = 55555 remote.allowAnyHosts = true withCredentials([usernamePassword(credentialsId: '4', passwordVariable: 'password', usernameVariable: 'username')]) { remote.user = "${username}" remote.password = "${password}" } sshCommand remote: remote, command: 'pwd=$(pwd) echo "ssh连接成功!当前工作目录:$(pwd)"' sshCommand remote: remote, command: 'echo "删除:superManagement..."' sshRemove remote: remote, path: '/home/app/apps/1panel/apps/openresty/openresty/www/sites/policeSecurityServer/index/superManagement' sshCommand remote: remote, command: 'echo "删除:superManagement成功!"' sshCommand remote: remote, command: 'echo "将构建的superManagement发送到服务器..."' sshPut remote: remote, from: '/var/jenkins_home/workspace/警保联动-超级后台/superManagement/superManagement', into: '/home/app/apps/1panel/apps/openresty/openresty/www/sites/policeSecurityServer/index' sshCommand remote: remote, command: 'echo "superManagement发送成功!"' } } } } }