- 确保当前
master
功能与其他组件不冲突,不破坏兼容性 - 从
master
拉出发布release/vX.Y.Z
分支 - 依照发版规则递进
master
上的版本号,并更新发布分支中version.go
的版本号 - 发布分支中功能冻结;如有重大
bug
修复需要从master
中并入分支,可以通过backport的方式合并至release/vX.Y.Z
分支
-
阶段 0 - 自动化测试
- 自动化测试
- CI: 通过所有CI
- 自动化测试
-
阶段 1 - 自测
- 升级dev测试环境
- 检查节点同步情况
- 升级预生产环境
- (可选)检查节点同步情况
- 确认以下工作流 (如是Z版本,此项可选;如是X、Y版本,此项为必选)
- 封装一个扇区
- 发一个存储订单
- 提交一个PoSt
- 出块验证,出一个块
- Snapdeal验证
- (可选)让一个扇区变成faulty,观察是否恢复
- 升级dev测试环境
-
阶段 2 - 社区Beta测试
- (可选)社区Venus Master测试
- 新功能特性,配置变化等等的文档撰写
-
阶段 3 - 发版
- 最终准备
- 确认
version.go
已更新新版本号 - 准备changelog
-
tag
版本(3选1)- 正式版
vX.Y.Z
- rc版
vX.Y.Z-rc[x]
,并标记为pre-release
- pre-rc版
vX.Y.Z-pre-rc[x]
,并标记为pre-release
- 正式版
- 版本发布至
releases
- (可选)检查是否有
PR
单独提交至release/vX.Y.Z
分支,并提交Release back to master
的PR
- (可选)创建新版本的discussion讨论帖
- 确认
- 最终准备
- (可选)按需更新release-issue-templat.md模版
- (可选)使用release-issue-templat.md模版创建下一个发版issue