使用GitHub Actions
、mp-ci
为Taro
项目添加持续集成,让开发飞上天。
mp-ci
mp-ci
是微信小程序(游戏)发布助手, 支持预览和上传。可以直接接入开发流程中,提高研发效率。
基于官方miniprogram-ci
封装,比它的老大哥 mini-deploy 好了很多倍,再也不需要安装开发者工具,也不用考虑登录、操作系统的问题。
- 自动读取
appid
、setting
- 上传信息(版本和备注)自动生成
- 美化执行结果
更多说明直接访问 mp-ci。
准备工作
下载私钥
使用前需要使用小程序管理员身份访问"微信公众平台-开发-开发设置"后下载代码上传密钥,并配置 IP 白名单。
这里需要关闭IP
白名单,因为无法确定GitHub
服务器的IP
范围。
设置私钥到GitHub
mp-ci
是通过文件形式接受私钥的,但是把私钥直接放到GitHub
上显然是不安全的。
这里我们使用GitHub
的Secrets
来存储私钥内容,然后在执行时再创建私钥文件。
打开仓库的Settings/Secrets
页面设置接口,假设我们存储的名字是UPLOAD_PRIVATE_KEY
。
GitHub Actions 配置
新建.github/workflows/build.yaml
文件。
也可以在Actions
一栏,选择Node.js
或者set up a workflow yourself
。
使用以下内容填充:
name: MP CI
on:
push:
branches: [ master ]
pull_request:
branches: [ master ]
jobs:
build:
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [10.x]
steps:
- uses: actions/checkout@v2
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v1
with:
node-version: ${{ matrix.node-version }}
- name: Install Dependencies
run: npm i
- name: Build weapp
run: npm run build:weapp
# 从 secrets.UPLOAD_PRIVATE_KEY 生成私钥文件
# see Project/Settings/Secrets
- name: Generate private key for upload
run: echo "$UPLOAD_PRIVATE_KEY" > private.key
env:
UPLOAD_PRIVATE_KEY: ${{ secrets.UPLOAD_PRIVATE_KEY }}
# 上传代码
- name: Upload to WeChat
run: npx mp-ci upload ./ --pkp=./private.key --no-test
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。