upload-miniprogram
v1.2.0
Published
chatlabs 集成 微信小程序CI/CD上传工具,支持自动上传代码和生成预览二维码
Downloads
48
Maintainers
Readme
upload-miniprogram
微信小程序CI/CD上传工具,支持自动上传代码和生成预览二维码。
功能特性
- ✅ 自动上传小程序代码到微信开发者平台
- ✅ 生成预览二维码
- ✅ 支持多环境配置 (开发/测试/预发布/生产)
- ✅ 集成Jenkins CI/CD环境
- ✅ 在本地环境自动获取Git用户信息
安装
npm install -g upload-miniprogram或者作为开发依赖安装:
npm install --save-dev upload-miniprogram使用方法
命令行方式
# 基本用法
upload-miniprogram --appid your-appid --project-path ./dist --app-version V0.0.1 --env development --desc "功能更新"
# 完整参数
upload-miniprogram \
--appid your-appid \
--project-path ./dist \
--env development \
--app-version V0.0.1 \
--desc "功能更新" 参数说明
| 参数 | 缩写 | 必填 | 说明 | 参数修改说明| |------|------|------|------|------| | --appid | -a | 是 | 小程序ID |每个项目固定1-2个,可能跟环境不同,确定后不需再修改| | --project-path | -p | 是 | 小程序项目打包后的代码路径 |一般是 ./dist 或 ./dist/weapp 每个项目固定1个路径,确定后不需再修改| | --env | -e | 是 | 环境变量 (development|staging|uat|production) | 按每个Jerkins链接的环境设置| | --app-version | -V | 是 | 上传至小程序的版本号 |每次构建时需要重新填写| | --desc | -d | 否 | 版本描述 |每次构建时需要重新填写| | --robot | -r | 否 | 机器人编号 |每个环境有默认值,支持部分范围输入|
编程方式
const uploadMiniprogram = require('upload-miniprogram');
// 使用默认配置
uploadMiniprogram({
appid: 'your-appid',
projectPath: './dist',
version: '1.0.0',
desc: '功能更新',
env: 'production'
});
// 或者使用类方式
const { UploadMiniprogram } = require('upload-miniprogram');
const uploader = new UploadMiniprogram(options);
await uploader.run();环境配置
私钥配置
工具需要微信小程序的私钥文件才能上传代码。私钥文件应该放在以下位置:
本地开发环境:
./scripts/private.{appid}.keyJenkins环境:
${WORKSPACE}/../mp-ci-upload-key/private.{appid}.key环境变量
支持以下环境:
| 环境 | 版本后缀 | 机器人 | 描述 | |------|----------|--------|------| | development | .dev | 默认 1,支持传入 6-10| 开发环境 | | staging | .staging | 默认 2,支持传入 11-15 | 测试环境 | | uat | .uat | 默认 3,支持传入 15-20 | 预发布环境 | | 自定义(如xxx) | .xxx | 默认 4,支持传入 21-25 | 自定义环境 | | production | (无) | 默认 5,支持传入 26-30 | 生产环境 |
Jenkins集成
在Jenkins中配置环境变量:
- 增加 version 和 desc 参数,每次构建时使用
- 运行命令 yarn upload:mp:dev -- --app-version=${version} --desc="${desc}"
许可证
MIT
