技术改造 - Jenkins
项目统一迁移到
Jenkins上构建处理
项目迁移列举
新项目不列举, 默认要求
Jenkins构建
- ✅ 用户中心 auth-center-frontend
- ✅ 运营 playlet-ui
- ✅ 分销 playlet-agent-ui
- channel
- ✅ channel-web-frontend
- ✅ channel-app-frontend
- ❌
jiashu
- ✅ 供应商 playlet-supply-web-ui
- ✅IAA-渠道-推广后台 channel-web-iaa-frontend
- ✅ 全名分销-后台 spread-playlet-jnt-admin
- ✅ 全名分销-h5 spread-playlet-jnt-h5
- ✅ 全名分销-外部代理商 spread-playlet-jnt-admin-external
- ✅ 短剧-免费-分销商 playlet-iaa-agent-web-frontend
迁移修改点列举
1. 镜像地址修改为阿里源地址
sh
registry=https://registry.npmmirror.com/
sass_binary_site=https://npmmirror.com/mirrors/node-sass/2. 统一从 dist 目录获取到构建产物, 在上传放到 CDN
javascript
// https://vitejs.dev/config/
export default defineConfig(({ command }) => {
return {
base: VITE_APP_ENV === 'production' ? '/' : '/',
build: {
outDir: 'dist',
assetsDir: 'static',
},
}
})javascript
// https://cli.vuejs.org/config/
module.exports = {
productionSourceMap: false,
publicPath: './',
assetsDir: 'static',
outputDir: `dist/${process.env.VUE_APP_PLATFORM}/` + process.env.FOLDER + '/' + process.env.BUILD_NAME,
outputDir: 'dist',
}3. Nodejs 版本
目前 Jenkins 提供两个版本 nodejs, 根据项目所需版本选择, 需要注意在 Jenkins 中配置环境变量
tips: 在
18.20.3版本中, 可以直接使用pnpm包管理器
sh
export NODEJS18_20_HOME=/opt/nodejs/node-v18.20.3
export PATH=$NODEJS18_20_HOME/bin:$PATHsh
export NODEJS16_HOME=/opt/nodejs/node-v16.14.2
export PATH=$NODEJS16_HOME/bin:$PATH4. 发布统一构建命令
sh
# 构建测试环境
npm run test
# 构建生产环境
npm run build:prodsh
# 构建测试环境
pnpm run test
# 构建生产环境
pnpm run build:prod5. Jenkins job shell
sh
#!/bin/bash
export NODEJS18_20_HOME=/opt/nodejs/node-v18.20.3
export PATH=$NODEJS18_20_HOME/bin:$PATH
npm install
npm run build:prod
cd dist/
ls -l
rm -f html.tar
tar zcvf html.tar *sh
#!/bin/bash
export NODEJS16_HOME=/opt/nodejs/node-v16.14.2
export PATH=$NODEJS16_HOME/bin:$PATH
npm install
npm run build:prod
cd dist/
ls -l
rm -f html.tar
tar zcvf html.tar *