diff --git a/jenkins/流水线配置/apex_web.conf b/jenkins/流水线配置/apex_web.conf new file mode 100644 index 0000000..fa56f40 --- /dev/null +++ b/jenkins/流水线配置/apex_web.conf @@ -0,0 +1,70 @@ +pipeline { + agent any + + parameters { + gitParameter( + branchFilter: 'origin/(.*)', + defaultValue: 'main', + name: 'Code_branch', + type: 'PT_BRANCH', + selectedValue: 'DEFAULT', + sortMode: 'NONE', + description: '选择代码分支: ', + quickFilterEnabled: true, + tagFilter: '*', + listSize: "1" + ) + } + environment { + REMOTE_HOST = "43.159.145.241" // 远程服务器 {params.REMOTE_HOST} + REMOTE_PROJECT_PATH = "/data/tengine/html/apex_web" // 远程 Python 项目路径 + } + stages { + stage('拉取代码') { + steps { + git branch: "${params.Code_branch}", credentialsId: 'fly_gitlab_auth', url: 'http://172.24.16.20/web/apex-platform-fe.git' + } + } + stage('pnpm install') { + steps { + script { + sh """ + export PATH="/data/node-v20.15.0/bin:$PATH" + echo "开始安装依赖包" + cd ${WORKSPACE}/ && rm -rf node_modules && pnpm install + echo "依赖包安装完成" + """ + } + } + } + stage('pnpm build') { + steps { + script { + sh """ + export PATH="/data/node-v20.15.0/bin:$PATH" + echo "开始构建" + cd ${WORKSPACE}/ && rm -rf dist && pnpm build + mv dist/main/index.html dist/ + chmod -R 755 dist/ + """ + } + } + } + stage('工程同步') { + steps { + sh """ + ssh ${REMOTE_HOST} 'mkdir -p ${REMOTE_PROJECT_PATH}' + rsync -avz ${WORKSPACE}/dist ${REMOTE_HOST}:${REMOTE_PROJECT_PATH}/ + """ + } + } + } + post { + success { + echo '✅ 部署成功!' + } + failure { + echo '❌ 部署失败,请检查日志!' + } + } +} \ No newline at end of file