布景 跟着事务的发展,转转除了转转APP外,开发了越来越多的独立APP去满意事务;作为转转最早的客户端团队,除了满意自身事务需求外,也需求供给公司级通用的APP继续交给根底才能。可快速扩展到其他APP运用,进步全体作业质量和效率。鲁班在继续交给的全体流程中,首要承当:APP版别流程、包构建、APP专项测验等才能。

鲁班的构建办理

APP的继续交给尽可能的将全体项目流程串了起来。开发阶段的代码分支由beetle进行办理,详见文档《转转客户端继续集成–分支办理》

本次首要给大家共享鲁班的包构建办理相关才能。

开发测验阶段,包构建频次非常高,整个阶段经历:提测-测验-修正-测验的一个反复进程,构建办理供给了这个环节的根底才能,需求供给稳靠,尽可能主动化,削减人工重复耗费的才能。

转转客户端持续交付—鲁班的构建管理

结合布景和咱们的方针需求,在设计鲁班的构建办理模块时,首要包含了以下几个点:

1、通用性,可扩展

构建才能不仅仅是给转转APP,需求可快速扩展到公司其他APP;并支撑各事务自定义自己的打包脚本

构建脚本将通用装备和脚本内容供给公共打包模板,供给可视化的操作,便利用户操作。满意根底的构建要求。

转转客户端持续交付—鲁班的构建管理

除了公共构建参数外,又供给了自定义的扩展参数,便于各事务在根底构建脚本外扩展自己的事务逻辑。

转转客户端持续交付—鲁班的构建管理

2、构建参数模板化

鲁班支撑将不同参数组成一个个构建模板,便利构建人员依据不同的场景打出不同用处的包。

除了供给的根底测验包、发版包外,支撑各事务依据自己的需求定制个性化的构建模板。模板能够简化构建填写内容,有用防止人为填写出错等状况。

转转客户端持续交付—鲁班的构建管理

经过模板,可削减用户操作,只填写可变的部分,防止一些关键信息填写过错的问题出现。

转转客户端持续交付—鲁班的构建管理

3、触发构建机制

现在触发机制有两种:主动触发或手动触发

  • 主动触发:开发提交tag主动触发,削减人的介入
  • 手动触发:包括开发在beetle上触发编译操作或在鲁班渠道上手动构建需求的包

beetle上编译触发:和全体开发流程结合,只构建有用版别,防止一些不必要的tag过多占用构建资源

鲁班渠道构建:适用需求特别场景的包,手动创立

两种方法,满意了各事务的不同的场景需求,依据自身事务特性去选择触发方法。

4、构建成果数据存储

包含构建前史和打包成果的存储。分别记载构建信息和打包成果的信息,成果可查询,另外会存储包巨细等信息,可生成报表查看阶段包巨细变化等。

转转客户端持续交付—鲁班的构建管理

构建成果存储为二维码,便利用户扫码装置。

转转客户端持续交付—鲁班的构建管理

5、串联发版才能

当选择发版模板时,会触发android和ios的发版功能,主动完结发版操作

转转客户端持续交付—鲁班的构建管理

发版的同时保存版别数据成果,记载版别前史节点,便于后续版别追溯。

其他

构建办理还关联了APP的一些主动化、查看项等装备。例如静态代码扫描,冒烟,UIcase等,本次就不具体介绍了。

后续静态代码扫描等根底才能进一步完善后,会设定指标对全体APP的流程做一个控制,对APP的交给有一个准入准出规范规范。

大致流程如下:

转转客户端持续交付—鲁班的构建管理

以上为转转客户端,鲁班供给的构建相关才能,欢迎大家沟通评论~

作者:孙敏

转转研发中心及业界小伙伴们的技术学习沟通渠道,定时共享一线的实战经验及业界前沿的技术话题。

关注公众号「转转技术」(综合性)、「大转转FE」(专心于FE)、「转转QA」(专心于QA),更多干货实践,欢迎沟通共享~