微信小程序 CI 自动化命令行助手工具,无需扫码登录,一键上传发布,方便快捷,解放双手,告别打包侠!
支持微信小程序/游戏代码上传和预览等功能。可以和Jenkins
、GitHub Actions
、Gitlab Ci
结合使用,实现持续集成自动化发布。
- [x] 上传代码,对应小程序开发者工具的上传
- [x] 预览代码,对应小程序开发者工具的预览
- [ ] 构建 npm,对应小程序开发者工具的: 菜单-工具-构建 npm
- [ ] 上传云开发云函数代码,对应小程序开发者工具的上传云函数能力
- [x] 代理,配置网络请求代理方式
- [ ] 支持获取最近上传版本的 sourceMap
// 全局安装
$ npm install miniprogram-helper-cli -g
// 本地安装
$ npm install miniprogram-helper-cli --save-dev
Commands:
upload [options] [workspace] 上传代码
preview [options] [workspace] 预览代码
键 | 默认值 | 说明 |
---|---|---|
option | 同下 | 项目配置 |
workspace | 默认命令执行当前目录 | 项目目录 |
// 本地方式
$ Usage: miniprogram-cli upload [options] [workspace]
$ Example: miniprogram-cli upload ./dist --ver "1.*.*" --desc "描述" --robot 5
// npx方式
$ Usage: npx miniprogram-helper-cli upload [options] [workspace]
$ Example: npx miniprogram-helper-cli upload ./dist --ver "1.*.*" --desc "描述" --robot 6
上传代码:
Options:
--env [value] 环境
--appid [value] 小程序appid
--type [value] 类型
--ver [value] 版本号
--desc [value] 简介
--pkp [value] 私钥文件所在路径
--robot [value] 指定CI机器人
| 键 | 类型 | 默认值 | 说明 | | ----- | ---- | ---------------------------- | ------------------------------------------------------------------------ | --- | ---- | | env | 属性 | dev | 小程序环境配置 dev | stg | prod | | appid | 属性 | project.config.json 中 appid | 小程序 appid | | type | 属性 | miniProgram | 项目的类型,有效值 miniProgram/miniProgramPlugin/miniGame/miniGamePlugin | | ver | 属性 | 0.0.0 | 项目版本号 | | pkp | 属性 | private.${项目 appId}.key | 私钥路径 | | robot | 属性 | 1 | 指定使用哪一个 ci 机器人,可选值:1 ~ 30 |
version
版本号规则优先级:
- 获取传入的版本号参数:
--ver
- 获取项目目录下的
package.json
文件中 version 值
desc
备注规则优先级:
- 获取传入的简介参数:
--desc
- 组合:
env: ${env} ${desc || 获取项目(
git)最新
commit的
message+ hash}
显示 - 显示:
暂无简介
pkp
私钥优先级:
- 读取传入的私钥路径参数:
pkp
路径 - 读取项目下 private.${项目 appId}.key 文件
npx --no-install cross-env appId="wx733dda9d282a7da0" workspace="/e/web/mini-programs-resident" miniprogram-cli-init
此处依赖 cross-env 插件
// 本地方式
$ Usage: cross-env [options] miniprogram-cli-init
$ Example: cross-env appId="123456" workspace="/e/web/wx-project" miniprogram-cli-init
// npx方式
$ Usage: npx cross-env [options] miniprogram-cli-init
$ Example: npx cross-env appId="123456" workspace="/e/web/wx-project" miniprogram-cli-init
Options:
appId = "" 小程序appId,必填项
workspace = "" 工作目录,默认当前目录