0

Xcode Server Bot 集成在第六阶段停止:

“导出可安装产品”

在此处输入图像描述

原始构建日志显示为最终条目:

$ /usr/bin/xcrun xcodebuild -exportArchive -archivePath /Library/Developer/XcodeServer/Integrations/Integration-7f80e03e9471a040c753957c2600b0a6/BetUP.xcarchive -exportPath /Library/Developer/XcodeServer/Integrations/Integration-7f80e03e9471a040c753957c2600b0a6/ExportedProduct -exportOptionsPlist /Library/Developer/XcodeServer/Integrations/Integration-7f80e03e9471a040c753957c2600b0a6/ExportOptions.plist -IDEPostProgressNotifications=YES -DVTAllowServerCertificates=YES -DVTSigningCertificateSourceLogLevel=3 -DVTSigningCertificateManagerLogLevel=3 -DTDKProvisioningProfileExtraSearchPaths=/Library/Developer/XcodeServer/ProvisioningProfiles -configuration Debug

2016-09-05 13:50:33.659 xcodebuild[61877:3819468] [MT] IDEDistribution: -[IDEDistributionLogging _createLoggingBundleAtPath:]: Created bundle at path '/var/folders/x2/t8b7x9gs2x32b686xfzq77lw000087/T/MyApp_2016-09-05_13-50-33.658.xcdistributionlogs'.
2016-09-05 13:50:33.704 xcodebuild[61877:3819468] [MT] DeveloperPortal: Using pre-existing current store at URL (file:///var/_xcsbuildd/Library/Developer/Xcode/DeveloperPortal%207.3.1.db).
2016-09-05 13:50:33.712 xcodebuild[61877:3819482]  DVTSigningCertificateSource: Searching for signing identities in default keychain search list
2016-09-05 13:50:33.738 xcodebuild[61877:3819482]  DVTSigningCertificateSource: Searching for signing identities in default keychain search list
2016-09-05 13:50:33.757 xcodebuild[61877:3819482]  DVTSigningCertificateManager: __58-[DVTSigningCertificateManager forceFullSyncWithCallback:]_block_invoke (0x7fbc650a88a0): Signing certificates = {(

最终,集成达到超时限制并失败并出现错误:

断言:正在运行的任务被终止,因为它超过 1200 秒没有产生任何活动(使用 sudo xcrun xcscontrol --configure-integration-timeout 增加此超时)

将超时时间增加到超过 1200 秒(20 分钟)是没有意义的,因为它永远不会完成。早期阶段需要 3 分钟,因此 17 分钟是足够的时间来导出。

诸如此类的其他帖子没有提供解决方案:

Xcode Server Bot 集成无法导出存档并带有断言失败:exportArchive: ipatool failed with an exception

Xcode Server Bot 集成无法导出存档:错误 Domain=IDEDistributionErrorDomain Code=1“无法完成操作。”

将私钥 -通过拖动- 从登录用户复制到系统钥匙串也没有解决:

Xcode Bots:常见问题和解决方法

紧抓着稻草,我尝试了几乎所有其他方法,包括--sync-portal教程Xcode Server Hacks 中描述的所有内容: 2. 使用 xcscontrol 进行控制

更不用说明显的重新启动 - 不是重置!- 使用这个命令:

sudo xcrun xcscontrol --restart

几乎尝试了我能想到的所有方法,如何解决这个问题?

4

1 回答 1

1

最后,唯一需要尝试的是重置 Xcode 服务器

正如Xcode Server Hacks 中所强调的: 1. 在 Xcode Server Troubleshooting 的幕后:

“当你破解太多而 Xcode Server 变得疯狂时,你需要一种方法来重置它的所有状态并重新开始。当我最初开发 Buildasaur 时,我会每天重置 Xcode Server 几次。有一个命令可以停止所有Xcode Server 的运行守护进程,并删除 /Library/Developer/XcodeServer 的所有内容。 注意,你所有的 bots 和集成数据也会被删除。在调试过程中它是必不可少的工具,但在生产中要小心,不要意外删除您所有的机器人和集成资产。”

该命令会清除所有 Bot 和配置:

sudo xcrun xcscontrol --reset.

完成之后,有必要重新开始,配置服务器应用程序的 Xcode 服务以添加必要的开发团队。

这就是事情变得有趣的地方。

已输入 Apple ID,并选择了相关团队;显示错误:

“您必须是团队代理或管理员才能将此服务器添加到开发团队”

使用 Apple 的开发者门户将 Apple ID 设置为团队管理员解决了该问题。

添加回测试机器人后,它起作用了!

在经历了所有这些痛苦之后,我的建议如下:

-- 从 Server 的 Xcode 服务中删除团队。然后重新添加。这将暴露管理员权限的任何问题。

或者

-- 否则,执行重置并重新配置服务器的 Xcode 服务。然后再次重新添加机器人。

上面的第二个选项很痛苦,但它比花费数小时甚至数天尝试解决要快得多。通过复制,我能够在一个多小时内重置、重新配置和重新添加大约十个机器人。

于 2016-09-07T08:32:12.197 回答