iTunes Connect、TestFlight 和 Jenkins

Posted

技术标签:

【中文标题】iTunes Connect、TestFlight 和 Jenkins【英文标题】:iTunes Connect, TestFlight and Jenkins 【发布时间】:2014-09-23 14:24:09 【问题描述】:

我正在尝试了解如何使用 Apple 的 TestFlight 集成到 iTunes Connect 来实施我当前的工作流程。

目前我有一个 Jenkins 持续集成服务器,每次有人推送到 github 时,它都会编译并上传一个新构建到 TestFlight。

据我所知,iTunes Connect 没有用于上传新版本的官方命令行 API。

每次更改代码时,我都无法手动编译和上传 10 个应用程序。

如何使用现有工具和 iTunes Connect 实施此工作流程? (Jenkins、Bots、xcodebuild、应用程序加载器等...)

【问题讨论】:

【参考方案1】:

尝试将Shenzhen 与itunesconnect 选项一起使用:

$ ipa distribute:itunesconnect -a me@email.com -p myitunesconnectpassword --upload

如果是 Jenkins,它将是“执行 Shell”类型的构建步骤。

【讨论】:

酷,深圳的新特色。深圳目前使用 xcode 6 无法正常工作,但在后台使用的是 iTMSTransporter。 @Elvin R. 谢谢。除了 --upload 它没有发送给 testFlight 下的 Beta 用户。但是 --upload 解决了我的查询。干杯.....【参考方案2】:

或者您可以使用 altool:/Applications/Xcode.app/Contents/Applications/Application\ Loader.app/Contents/Frameworks/ITunesSoftwareService.framework/Support/altool

用法:

altool --validate-app -f file -u username [-p password]
altool --upload-app -f file -u username [-p password]

【讨论】:

要执行这个命令,我需要在运行 jenkins 的机器上安装 Xcode 对吧?【参考方案3】:

您可以使用deliver testflight 将您的ipa 文件轻松上传到Apple TestFlight。 deliver 相对于 shenzhen 的优势在于,deliver 实际上将允许测试人员安装新版本。

【讨论】:

我在 deliver 中找不到自动化 build number 增量的选项。有可能吗? @AlexCohn 没问题,你可以使用内置的 fastlane 操作来实现 github.com/fastlane/fastlane/blob/master/docs/… 有没有什么好的教程可以提供 Xcode -> tesflight 通过 jenkins 集成这个工具?

以上是关于iTunes Connect、TestFlight 和 Jenkins的主要内容,如果未能解决你的问题,请参考以下文章

iTunes connect / Testflight 应用程序总是显示旧版本(即使我们上传新版本到 testflight)

如何修复 TestFlight (iTunes Connect) 中的多个构建错误?

iTunes Connect TestFlight 不发送邀请

在 Itunes Connect 中,再次将“准备销售”构建提交给 Testflight

iTunes Connect Testflight Beta 测试

如何在 iTunes Connect 中使用 TestFlight 获取崩溃报告?