iOS 自动构建套件

来源:互联网 发布:淘宝店铺宣传团队抽成 编辑:程序博客网 时间:2024/05/17 01:50

编者按:本文转载自 flow.ci 用户 GitHub@mzying2013 的实践分享,原文链接这里。


前言

相信很多最开始接触自动构建都是从 Jenkins 开始的。都是纯手工搭建,本地代码创库也是 Gitblit 搭建的。基本上每次换工作,都需要重新搭建一遍,实在心累。期间踩坑无数,暂且不表。接触到 flow.ci 还是因为之前一直在用他们的 APP 发布平台服务
fir.im 。本文是我对 flow.ci 的一些体验,期望可以帮助 iOSer 快速上手。

准备工作


  1. 项目的 Git 仓库(什么?还在用SVN!恨铁不成钢的表情,SVN转Git可以看这里)

  2. 注册 Coding 账号,创建Coding私有创库(免费的哦)。

如果之前有Git仓库,也可以新建一个专门用于自动构建的分支

  • 注册 *flow.ci 账号*(不收费,不过要手机号码接收短信验证码)

  • 注册 **fir.im 账号,生成并获取 **API Token (不收费,不过要手机号码接收短信验证码)
    fir.im

  • 绑定 Coding 账户。在 dashboard 页面点击用户头像 - Git仓库创建项目都可以绑定 Coding 账户。(GitHub,Bitbucket,Coding,GitLab,码云都是支持的)

  • 证书和描述文件。引用一下 flow.ci 自己的详细导出证书和描述文件教程。

    (企业证书请忽略)切记在描述文件里面添加要安装设备的 UDID,否则会出现从 fir.im 下载的时候,提示“无法安装该应用”。到时候需要重新在描述文件添加 UDID,然后重新上传描述文件并再次构建。

  • 开工

    项目配置

    1. flow.ci 的 dashboard 页面直接点击创建项目

    2. 选择 Coding 并选择对应的代码仓库。

    3. 项目基础配置。选择苹果图标,Xcode版本。点击创建flow.ci

    4. 工作流配置。这是个精细化的配置,指定构建分支。你还可以设置定时任务。每天下班的时候构建一次。如果你有多个Scheme(比如APP有iPhone和iPad版本,免费和收费版本),这个时候可以在编译 - Scheme指定特定的Scheme。完成后可以配置一些构建失败和成功的通知(添加构建成功邮箱地址,小心邮件爆炸哦)。

    5. 添加成员。输入你的组员和测试人员的Email地址,点击邀请。他们会收到标题为Project invitation的邮件。按照提示操作,就可加入你的团队了。

    6. 设置。找到上传证书 & Provisioning Profile,上传准备工作6准备的描述文件和证书。
      flow.ci

    构建

    1. 自动构建。选择”构建列表”,一般等几秒钟就会出现你配置仓库的分支信息了.
      flow.ci

    2. 手动构建。如果你嫌自动构建读取分支信息慢,点击手动构建,选择自己想构建的分支。
      flow.ci

    3. 构建过程。点击构建当前构建条目(如果状态是准备资源,则需要等待几秒钟。然后自动会变为运行中。),即可看到如下图的构建流程。通常编译阶段会比较容易发生错误信息。按照错误提示修改项目,然后提交到Coding。flow.ci会自动同步代码库并运行构建。
      flow.ci

    4. 构建后。发布构建的 APP 到 fir.im 平台。首先需要点击工作流中左边的”+”号并搜索fir,添加fir.im上传插件。在FIR_API_TOKEN框中填入准备工作4获取的API Token
      如果一切顺利的话,你会在 fir.im - 我的应用里面看到构建成功的APP包了。赶紧分享你的APP下载二维码吧。
      flow.ci

    后面两个选项可以选填。$FIR_CHANGELOG用于显示在 fir.im 下载页面的更新日志。一般我会填 “flow.ci build” 。用于区分手动上传和 flow.ci 自动构建。

    总结

    总体感觉下来,就是流畅,无缝衔接。作为一个被 Jenkins 折磨过多个版本的人,实在感慨。

    flow.ci 目前可以免费创建 5 个项目,在 flow.cidashboard 页面右上角有个电池一样的图标,可以看到你当前的使用情况,还有比较直观的数据分析。这只是 flow.ci 的初体验。

    期待以后挖掘更多有趣的功能。


    以上是 「flow.ci 最佳实践」系列之 GitHub@mzying2013 的使用分享,希望对你有用。

    flow.ci

    0 0
    原创粉丝点击