跳到主要内容

小程序部署发布

部署发布流程包含3个子流程,即新建版本、测试、灰度上线

发布模式​

小程序提供了两种发布模式:全量发布和分阶段发布

  • 全量发布是指当点击发布之后,所有用户访问小程序时都会使用当前最新的发布版本

  • 分阶段发布是指分不同时间段来控制部分用户使用最新的发布版本,分阶段发布我们也称为灰度发布

全量发布​

一般来说,普通小程序发布时采用全量发布即可,当小程序承载的功能越来越多,使用的用户数越来越多时,采用分阶段发布【灰度发布】是一个非常好的控制风险的办法

灰度发布​

当用户量大时,一个小改动,就有可能影响很多用户,所以,灰度发布就出现了

  • 进入灰度过程后,你可以随意调整比例,来控制新版本在全网流量的占比

  • 在整个灰度环节,你可以指定哪些用户一定打到最新版本

如果有问题,可以点击「回退」按钮结束发布单,流量全部切换为之前的版本

部署方式​

  • 1、通用部署
  • 2、本地上传部署
  • 3、代码提交自动部署
  • 4、Tags部署

后面三种部署仅推版本,仍需确定或者手动设置体验版

不同的打包方式将触发不同的cl脚本进行代码上传

通用部署​

  • 1、完成小程序配置,在开发者工具人上传代码
  • 2、在微信开发平台中,提审上传的版本【可将上传的代码包设置为体验版先进行测试】
  • 3、审核通过后可按维度进行全量发布或者灰度发布

本地上传部署​

  • 可写一个build构建相关的命令触发【编译->打包->上传】的一条龙服务

代码提交自动部署​

  • 代码提交完成后,gitlab仓库的 .gitlab-ci.yml配置文件,可触发脚本来执行【编译->打包->上传】

    • 运行在 .gitlab-ci.yml文件中定义好的script脚本语句,构建代码包
    • 构建完成后,引入微信自动上传插件miniprogram-ci进行代码包上传

    miniprogram-ci插件文档:

Tags部署​

将主仓库和子仓库分别都打上相同的Tag,会在主仓库生成CI构建块,可在构建块选择不同的打包模式【取决于.gitlab-ci.yml文件定制的不同给构建指令】

这里为什么要两个仓库都打Tag?

  • 如果构建块是由Tag生成,那么构建的时候会去关联子仓库对应的Tag,如果关联不上,构建失败

支付宝小程序部署​

申请账号​

  • 1、申请地址
  • 2、主账号类型为企业类型

创建应用​

应用配置​

  • 进入应用配置,配置接口加密方式,支付宝网关,接口内容加密方式

  • 账号检查和角色添加

小程序CI构建​

miniprogram-ci 【ci机器人】​

体验版始终设置为由机器人上传版本,避免每次换组员上传后还需要去微信小程序后台手动切换体验版

  • 通过miniprogram-ci上传成功之后,会在微信公众平台看到 ci机器人的提交记录