报名参加CloudWeGo黑客松,奖金直推双丰收! 了解详情
写点什么

Fastlane 为 iOS 带来持续部署

  • 2015-01-25
  • 本文字数:1541 字

    阅读完需:约 5 分钟

Fastlane 是一组工具套件,旨在实现 iOS 应用发布流程的自动化,并且提供一个运行良好的持续部署流程,只需要运行一个简单的命令就可以触发这个流程。

Fastlane 是一个 ruby 脚本集合,其中囊括了向苹果商店提交新应用或更新已有应用所需要的最常用任务。

  • deliver用于上传应用的二进制代码,应用截屏和原数据到应用商店
  • snapshot可以自动化 iOS 应用在每个设备上的本地化截屏过程
  • frameit用于在应用截屏外添加设备框架
  • PEM可以自动化地生成和更新应用推送通知描述文件
  • sigh可以生成并下载开发者的应用商店配置文件

这个套件支持与 Jenkins CocoaPods xctools 等其他第三方工具的集成,并且能够定义多个 _ 通道(lanes)_ 以支持不同的部署目标,如应用商店,Beta 测试和测试。

fastlane 典型的工作流程如下:

复制代码
lane :appstore do
increment_build_number
cocoapods
xctool
snapshot
sigh
deliver
frameit
sh "./customScript.sh"
slack
end

为了了解到更多关于这个项目的信息,InfoQ 采访了 Fastlane 的发明者 Felix Krause

持续交付 /部署能够给 iOS应用部署流程带来的最大收益是什么?在苹果的审核流程框架之下,这个工具能够多大程度地发挥作用?

最主要的收益就是能够在每次发布一个更新或全新应用的时候可以为你节省大量的时间。这是 iOS 开发者必须亲自完成的工作。

在刚刚启动这个项目的时候,我并不确定是否能够将 iOS 应用发布流程的各个方面完全自动化,因为并没有公开的 API 来实现它。令人高兴的是,它的确能够正常运转,而且我已经为多家公司制定了完整的持续部署解决方案。

可否为我们简单描述一下使用 fastlane**** 的典型的工作流程?其中最相关的定制化选项有哪些?

我主要在如下场景下使用 fastlane:

  • 在每次提交时执行测试(这包括单元测试和集成测试)
  • 只创建新的屏幕截图将其发送给客户
  • 构建并分发 Beta 版本
  • 构建并分发至应用商店(这包括更新配置文件,创建新的屏幕截图,上传应用至应用商店并提交应用)

在 http://fastlane.tools 网站上可以找到一些简单的例子。每个开发者都可以很方便地添加或删除单个构建步骤,甚至可以实现自己的构建步骤。

你认为什么类型的组织(例如独立开发者,小型开发组织,大型企业等)能够从 fastlane**** 的使用中受益最多?

独立开发者和处于初创阶段的小型开发组织:这类组织通常还没有运行任何自动化流程,很容易就可以开始使用 fastlane。大型企业通常都已经有了某种类型的持续集成工具,他们需要适应 fastlane 的使用。

可否告诉我们一些关于 fastlane**** 当前采用率的情况?现在有什么成功案例么?

我不想自卖自夸,不过我可以分享一些数字:

  • 全部 fastlane 工具大约有 20000 次安装
  • 在第一次发布后的三天内有 10000 人次访问了 http://fastlane.tools
  • 所有 工具和 fastlane 曾经入选 Github 当月 Ruby 趋势库

我已经从一些知名的公司得到反馈称,他们已经成功地将 fastlane 工具集成到了他们的发布流程中。 Panic 是我得到反馈最大的公司之一。

驱动你创建 fastlane**** 的过程是怎样的呢?

我最初只为一个客户实现了 fastlane,当时的 fastlane 与他们的系统结合十分紧密。当我跟其他的开发者谈论此事时,他们非常兴奋并且询问他们是否也可以使用这个工具。这就是为什么我以一种十分灵活并且文档齐全的方式开发这个工具以便将其共享给其他 iOS 开发者。

最初我只开发了 deliver 。之后我意识到还缺少一些工具,这就是为什么我又创建了另外四个工具(snapshot,frameit,PEM 和 sigh)。因为这些程序都是独立运行的,我又想到以某种方式将它们连接起来。也就在这时我有了 fastlane 的想法。

Fastlane 是一个开源的工具集,可以从Github 得到它的克隆。从官方指南中可以了解到关于安装、配置和使用这些工具的更多细节信息。

查看英文原文: Fastlane Brings Continuous Deployment to iOS

2015-01-25 09:0814076
用户头像

发布了 75 篇内容, 共 64.3 次阅读, 收获喜欢 6 次。

关注

评论

发布
暂无评论
发现更多内容

用友BIP超级版商旅费控,AI+成就一站式智慧出行

用友BIP

东南亚TikTok直播:直播专线的重要性及其优势

Ogcloud

海外直播专线 tiktok运营 tiktok直播 tiktok直播专线 tiktok直播网络

Redis缓存异常及解决方案

天翼云开发者社区

redis 缓存

HarmonyOS应用程序访问控制探究

白晓明

HarmonyOS NEXT

CAT 对接观测云最佳实践

观测云

cat

天翼云CDR基本概念

天翼云开发者社区

云计算 云主机 天翼云 容灾服务

小谈容灾备份

天翼云开发者社区

云计算 容灾

1688商品详情API返回值:提升用户体验的关键

技术冰糖葫芦

API Explorer API boy API 接口 API 测试

ShareSDK QZone

MobTech袤博科技

开发者

区块链技术的基本理论

天翼云开发者社区

区块链

ShareSDK 企业微信

MobTech袤博科技

提升用户体验:阿里巴巴拍立淘API返回值的个性化推荐

技术冰糖葫芦

API Explorer API boy API 接口 API 测试

利用Halo 20分钟构建企业门户

coxi_vv

开源软件 halo 1Panel

Poetry vs npm:两个包管理器的迷人相似性

我再BUG界嘎嘎乱杀

Python 编程 后端 npm Poetry

Python深度解析:上下文协议设计与应用技巧

我再BUG界嘎嘎乱杀

Python 编程 后端 开发语言 上下文管理

ShareSDK Twitter

MobTech袤博科技

开发者

望繁信科技荣膺上海市浦东新区博士后创新实践基地称号

望繁信科技

流程挖掘 流程智能 数字北极星 上海望繁信科技 博士后基地

10分钟构建代码托管平台Gitea

coxi_vv

开源软件 Gitea 1Panel

用友BIP超级版新品路演收官,加速中大型企业数智化进程

用友BIP

浅谈ChatGPT在云计算资源调度的应用

天翼云开发者社区

云计算 大模型 ChatGPT

本地部署马斯克开源Grok-1大模型,贝锐花生壳3步实现远程访问

贝锐

AI 内网穿透 Stable Diffusion

短信验证合规指南

MobTech袤博科技

开发者

68种架构可扩展性设计:从类到服务治理(成就架构师必备,收藏金典)

肖哥弹架构

架构设计 架构要素

势不可挡的All in AI,用友BIP AI+行业创新实践

用友BIP

下载量突破400万,百万开发者首选的 AI 编码工具通义灵码是如何炼成的?

阿里巴巴云原生

阿里云 云原生 通义灵码

10分钟构建Web 应用防火墙-WAF

coxi_vv

Web waf Web防火墙 1Panel

用友BIP3 R6发布,平台技术能力再升级

用友BIP

下载量突破400万,百万开发者首选的 AI 编码工具通义灵码是如何炼成的?

阿里云云效

阿里云 云原生 通义灵码

2028年洛杉矶奥运会和残奥会指定Autodesk 为“不新建永久场馆计划”官方设计与制造平台

E科讯

ShareSDK抖音

MobTech袤博科技

Fastlane为iOS带来持续部署_Android/iOS_Sergio De Simone_InfoQ精选文章