产品环境与测试环境部署 - mindpin/knowledge-space-net-lib GitHub Wiki

根据版本号响应服务, 版本发布脚本, 移动端数据库更新策略的说明以及开发实现,需要对服务进行部署;
同时,需要对移动客户端工程进行更新;
大体步骤如下,具体描述见下文:

  1. 版本更新服务架设。为了使用OSS方便,服务架设在阿里云主机上。 同时服务端文件存储改为使用阿里云OSS
  2. 移动客户端工程里数据库操作换用orm
  3. 移动客户端工程里添加migrations支持
  4. 移动客户端工程里添加打包上传发布脚本
  5. 移动客户端对更新服务的调用

服务架设

为了同时满足“正式运营发布”和“试用推广/新功能评估”的需要,更新服务分为正式服务和测试服务;
正式服务部署在 4ye.mindpin.com/update/
测试服务部署在 4ye-evaluation.mindpin.com/update/
两套服务分别维护各自的发布和里程碑记录
软件发布包文件存储采用阿里云OSS。

同时数据服务也要分两套部署在这两个二级域名

ORM替换

将目前客户端工程中存在的数据库访问操作代码最大限度地更改为使用ORM框架实现。
清理过期的废弃代码。同时做好人工/自动测试来保证逻辑的正确性。

migrations支持

完成ORM替换后进行这一步工作。目前的版本算第一个版本,所以只需要一个SQL脚本。

打包上传发布脚本

需要两个脚本针对正式服务和测试服务.(第一个版本是 0.1.3)

客户端更新

用户访问客户端时,客户端请求版本更新服务,并对用户的客户端更新做出适当的提示。
并且用户可以通过客户端内置界面来下载新的版本。
这里在前面都完成之后由 @ben7th 来实现。
同时,两个打包脚本需要添加对访问哪一个服务(4ye.mindpin.com / 4ye-evaluation.mindpin.com)做出配置项上的修改。

⚠️ **GitHub.com Fallback** ⚠️