背景痛点
在开发流程中的测试阶段,
当测试完一批 bug 单,就需要去打一个最新版的体验码,
来配合测试去检验新的一批 bug 单。
打体验码的话,需要那个人现将写到一半的代码 git stash,
开始编译打包。
在持续集成系统没有搭建完毕的时候,
可以临时写一个脚本,来完成繁琐的打包上传工作。
脚本功能
通过 shell 脚本来实现平台版和专属版小程序自动打包的功能。
只需要在拉取最新代码后,执行脚本,输入版本号/版本备注,
即可实现一键对平台版/专属版,两套代码的自动编译,
利用微信 cli 接口来实现打包上传。
每次打体验码时间大概可以控制在 5 分钟以内。
脚本思路
- 校验入参合法性。版本号的规则正则校验。
- 兼容 Window 和 mac 系统,适配两个系统的路径。
- 修改小程序标识位,设置为专属版标识。
- 编译代码。
- 修改开发者工具 appid。
- 上传代码
- 重复 3-6 步骤,将小程序标识位设置为平台版。
环境配置
macOS:
<安装路径>/Contents/MacOS/cliWindows:
配置环境变量 WECHAT_DEVTOOL_PATH_CLI: <安装路径>/cli.bat
※ 确保安装路径不能有空格!
重启电脑以应用环境变量
配置 nodejs / npm 环境微信开发者工具配置:
设置 -> 安全设置 -> 服务端口
设置为:开启
优化方向
- 目前脚本只是调用写死的 APPID,未来可以优化动态读取小程序的 APPID。