【问题标题】:Is Continuous Integration feasible for iOS development?持续集成对于 iOS 开发是否可行?
【发布时间】:2019-06-17 11:00:01
【问题描述】:

持续集成是否适用于 iOS。 我的 Jenkins 构建再次失败,“您的会话已过期。请登录。”我开始问自己,持续集成对于 iOS 开发是否可行。

您如何设置一个可靠的无人值守构建系统,该系统要求用户登录某些 Web 服务,而您的登录可能随时失效?据我所知,答案是:你不能。

这是不可能的。它永远是一个不可靠的系统,会无缘无故停止构建。

还是我错过了什么?

【问题讨论】:

  • 我已经看过几次了,我认为它与 Azure DevOps 集成得非常好,这对我来说是一个很大的惊喜。通常 Azure DevOps 使用与 Fastlane 的集成。你在 Jenkins 工作中使用 Fastlane 吗??
  • @m1sh0 不——云服务是不行的。 — 我们在本地本地构建中有一个沼泽标准,即使这样也行不通。
  • 好的,那么在您的 Jenkins 中,您可以使用此 docs.fastlane.tools/getting-started/ios/appstore-deployment 创建一个工作,这样就可以了。有一些东西,比如如何增加构建版本和应用版本,这可能有点棘手,但总的来说,让一切完全自动化是没有问题的。
  • @m1sh0 我会调查的。已经安装了适用于 Android 的 fastlane,所以也许这确实是要走的路。我们拭目以待。
  • 我看到它在不同的配置下工作,但肯定不是那么容易做到的。至少对我来说,我花了几天时间才让一切正常。但最终,它完成了工作。

标签: ios continuous-integration continuous-deployment apple-developer apple-developer-account


【解决方案1】:

作为cmets中讨论的答案,是可行的。没有简单的方法可以解释您需要的所有内容,而是简短的摘要。

如果你使用 Jenkins,

  1. 您需要访问 MacOS、在 MacOs 上运行的 Jenkins 或与 MacOS 一起使用的 Jenkins Slave。
  2. 机器上的 Xcode 从第 1 点开始。使用 xcode(xcode 命令工具) xcbuild。
  3. Fastlane 集成(检查 here
  4. 最后一件事是对您的流程、haw 以及何时增加构建等进行微调。

在 Azure DevOps 等一些提供商处,很容易通过系统的内置组件添加所有这些大步骤。

总的来说,我从来没有找到一个关于如何端到端完成的好教程。但是经过大量阅读和尝试,它是由我完成的,并没有在开发运维领域拥有丰富的经验。

附:如果你能在你制作它时为如何完成它提供一个很好的教程,那就太好了(我没有时间去做:()。

【讨论】:

  • 我试过没有 fastlane。只需使用 Jenkins xcode 构建步骤。也许这就是问题所在。
  • 对我来说也是。
猜你喜欢
  • 1970-01-01
  • 2019-06-15
  • 1970-01-01
  • 2023-03-23
  • 2018-04-03
  • 2010-09-12
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多