美文网首页征服iOS
fastlane - iOS持续部署神器

fastlane - iOS持续部署神器

作者: 李攀 | 来源:发表于2016-09-28 13:54 被阅读382次

    先说一个严肃的问题,我们为什么需要持续部署(Continuous Deployment)?

    • 为app提交、上传截图、发布等节省大把大把的时间(cry
    • iOS大哥蜜月旅行去了,iOS小哥要修复线上紧急bug并发布客户端版本,怎么破?不要在发布版本这件事情上仅依赖一个人
    • 通过高频的小版本迭代来提高版本的质量

    然后,我们来看一下实际工作中的iOS开发、打包和发布流程:

    1. 开发前,需要登录苹果开发者后台创建App、Provisioning Profiles、certificates等;
    2. 使用Xcode开发,然后将上述相关文件和证书配置好;
    3. 编译项目并自测;
    4. Archive项目;
    5. 上传包到iTunes后台;
    6. 配置TestFlight,准备测试刚上传的版本;
    7. 发布测试版本;
    8. 测试发现问题,重回2;
    9. 测试完成,在iTunes后台提交版本截图、描述等信息;
    10. 提交App Store审核;

    一直以来让iOS开发者头疼的问题就是上述10步繁琐的打包和发布流程,看似10步也不多,然而懂的人知道,这其中每一步都可能有坑,都可能都要花不少时间。然后,我们团队在做新项目的时候发现了一个神器,可以说是相见恨晚,这个神器就是fastlane,他几乎可以把上述流程全部自动化,而且还可以做的事情更多,想一下当初大把大把的时间都浪费在了这上面,现在终于可以解放的激动心情吧。

    先介绍一下fastlane,fastlane是一个完全开源的项目,现在被Twitter收购,是Fabric的一部分,主要是提供自动化构建和发布的一系列的工具集合,他包括iOS和Android工具集,由于我们只在iOS上使用,所以这里仅介绍一下iOS相关的工具:

    • deliver: 上传应用截图、metadata信息和ipa包到iTunes,提交审核
    • snapshot: 在所有分辨率的iOS设备上截图并上传iTunes
    • frameit: 快速地把应用截图放入设备框里
    • pem: 自动生成推送使用到的的profiles
    • sigh: 创建、更新、下载和修复provisioning profiles,支持App Store, Ad Hoc, Development和企业profiles,而且可以自动添加测试设备UDID
    • produce: 使用命令行在iTunes和Dev后台创建iOS app
    • cert: 自动化创建和维护你的iOS签名证书
    • pilot: 管理TestFlight的测试版本和测试设备
    • boarding: 自动创建一个表单来邀请参与TestFlight的用户
    • gym: 编译、打包iOS app,生成签名的ipa文件
    • match: 通过git在团队中共享和同步你的证书和profiles,避免团队开发经常遇到的iOS证书不一致的蛋疼问题
    • scan: 跑测试用例

    上述gym, sigh, match等几个工具可以说是极大提高效率的神器。

    下图是一个简略fastlane工作流程:


    总之,fastlane帮你统一定义、运行、自动化你的app发布流程,并且可以和其他第三方工具如CocoaPods等很好的结合,也可以和其他第三方持续集成(Continuous Integration)工具如Jenkins等完美的结合,不说了,从现在就开始快回去拯救你团队成员的生命吧~

    相关文章

      网友评论

        本文标题:fastlane - iOS持续部署神器

        本文链接:https://www.haomeiwen.com/subject/onwhyttx.html