发布与回滚
发布的时机
不是「它说做完了就发」,而是你自己按真实业务流程走通了一遍才发。判据见验收——你敢不敢把链接直接发给那个每天要用它的同事。
小步发比攒着发好。做完一块、验一块、发一块,同事早一天用上,你也早一天拿到真实反馈。攒两个月一次性发,风险和返工都是最大的。
发布前的三件事
检查正式版的密钥。 这是最常见的翻车点——密钥按版本分开存,开发版填了不等于正式版有。发布面板会列出正式版缺哪些,并提供一键从开发版复制;生产环境该用另一套账号的(比如正式的短信账号),手动填正式版那份,别复制。
想好新功能给谁用。 新做出来的、需要管权限的功能默认是待授权,谁都用不了。发布之后要去开一遍,见功能权限。
用最典型的使用者身份预览一遍。 见验收里的以身份预览。
发布
对话上方的发布到正式版。
新应用第一次发布,要先等它至少成功部署过一次开发版——按钮上写着「开发版部署成功后才能发布」,那就是还没轮到。发布走的是零停机切换,同事正在用的时候发布不会看到白屏或者报错。发布完会跑一次健康检查,不通过会明确告诉你,不会把坏的版本推给同事。
发布之后应用卡片上的标记变成已发布。之后你在对话里继续改,卡片上会多一个有更新的提示——意思是开发版比正式版新,你改的东西同事还看不到,什么时候发布由你决定。
定时任务只有在正式版才会自动跑,开发版不会。所以如果你设过「每天九点推日报」,发布之前它一次都没真跑过。发布之后第二天记得确认一下收到没有,见通知与定时任务。
发布、回滚、还原都要求你是这个应用的负责人(或者组织管理员)。不是负责人的话,对话框会告诉你「仅此应用的负责人可构建」,让管理员或现有负责人在应用设置 → 负责人里把你加进去,见成员、角色与负责人。
回滚与还原
对话上方的版本历史。每一次部署都是一条记录,你可以回到其中任意一版。先记住一件事:这两个操作都不会删数据,已经录进去的业务数据不受影响。
历史里每一条记录后面有两个按钮,方向完全相反,千万别点错。
把正式版回滚到此版本是救火用的。只影响正式版,也就是同事正在用的那个;同样是零停机切换,同事不会看到白屏;已经产生的业务数据不受影响;你的开发版原封不动——你可以一边让同事用回旧版,一边接着在开发版修。这是发现线上出问题时的第一反应:先回滚让同事能干活,再慢慢查。
把开发版还原到此版本是后悔用的。只影响开发版,也就是你正在编辑的那个;功能回到那个版本,之后的修改被撤销,但历史不会丢,还能再还原回来;这一步要重新构建需要等一会儿,万一构建没成功,开发版保持原样,什么都不会坏。用在「这几轮改下来越改越乱,想回到昨天那个能用的样子」。
一句话记住区别:
如果你要还原到的那一版之后新增过数据结构,界面上会明确提示:还原只回退功能和界面,已有的业务数据和新增的数据表都会保留。
举个例子:上周你加了一个「备注」字段,同事这周填了两百条备注。现在你还原到上周之前——「备注」这个功能没了,但那两百条数据还在库里,你再把功能加回来,数据还能看到。
小改动不用动版本历史。只是某一处不对,直接在对话里说「把刚才那个改回去」就行,比还原快得多,也不会连带撤销别的改动。版本历史是给「整体跑偏了」准备的。
下一步:发布之后同事说打不开 → 功能权限。