更新 java-mall-app-shop-admin/Jenkinsfile

部署配置脚本
This commit is contained in:
panjunjie 2025-08-11 11:07:06 +08:00
parent f272439db8
commit 56313b997f

View File

@ -2,25 +2,27 @@ pipeline {
agent any
tools {
nodejs 'NodeJS16'
nodejs 'NodeJS22'
}
environment {
// 主项目部署路径
DEPLOY_DIR = '/data/nginx/www/fafamall/demo'
// UniApp项目目录
UNIAPP_DIR = 'merchapp/java-mall-app-shop-admin'
// UniApp打包输出路径(根据实际项目配置调整
UNIAPP_DIST = 'merchapp/java-mall-app-shop-admin/dist/build/h5'
// UniApp项目目录
UNIAPP_SUB_DIR = 'merchapp/java-mall-app-shop-admin'
// UniApp打包输出目录(相对子目录的路径
UNIAPP_DIST_RELATIVE = 'dist/build/h5'
}
stages {
stage('拉取代码') {
steps {
checkout scm
echo "代码检出完成,当前工作目录: ${env.WORKSPACE}"
}
}
// 主项目构建部署(保持不变)
stage('安装主项目依赖') {
steps {
sh '''
@ -47,27 +49,40 @@ pipeline {
}
}
// 新增UniApp项目打包阶段
// UniApp项目打包在子目录中执行
stage('UniApp项目打包') {
steps {
sh '''
# 进入UniApp项目目录
cd ${UNIAPP_DIR}
echo "进入UniApp项目目录: ${UNIAPP_SUB_DIR}"
cd ${UNIAPP_SUB_DIR} || {
echo "错误UniApp项目目录 ${UNIAPP_SUB_DIR} 不存在!"
exit 1
}
# 清理旧依赖和缓存
# 显示当前目录以确认
pwd
# 清理旧依赖
rm -rf node_modules package-lock.json
# 设置镜像源并安装依赖
# 安装依赖
npm config set registry https://registry.npmmirror.com
npm install
# 执行UniApp打包以H5为例可根据需要替换为其他平台命令
# 执行打包H5平台可根据需要修改为其他平台
npm run build:h5
# 如需部署UniApp产物可添加部署命令示例
# mkdir -p /data/nginx/www/uniapp-shop-admin
# rm -rf /data/nginx/www/uniapp-shop-admin/*
# cp -r ${UNIAPP_DIST}/* /data/nginx/www/uniapp-shop-admin/
# 验证打包结果
if [ ! -d "${UNIAPP_DIST_RELATIVE}" ]; then
echo "错误UniApp打包失败未找到输出目录"
exit 1
fi
# 如需部署UniApp产物可添加以下命令
# UNIAPP_DEPLOY_DIR="/data/nginx/www/uniapp-admin"
# mkdir -p ${UNIAPP_DEPLOY_DIR}
# rm -rf ${UNIAPP_DEPLOY_DIR}/*
# cp -r ${UNIAPP_DIST_RELATIVE}/* ${UNIAPP_DEPLOY_DIR}/
'''
}
}
@ -75,10 +90,10 @@ pipeline {
post {
success {
echo '主项目及UniApp项目部署成功.'
echo '主项目及UniApp项目打包部署成功'
}
failure {
echo '项目部署失败.'
echo '项目构建或部署失败'
}
}
}
}