Xcode CI - 用于上传到 Fabric 的 Bot 脚本给出错误“无法检测构建环境”

Posted

技术标签:

【中文标题】Xcode CI - 用于上传到 Fabric 的 Bot 脚本给出错误“无法检测构建环境”【英文标题】:Xcode CI - Bot script for uploading to Fabric gives error "Failed to Detect Build Environment" 【发布时间】:2016-11-17 20:45:47 【问题描述】:

尝试设置 Xcode CI Bot 来构建我的应用并将其上传到 Fabric 以进行 beta 分发。

机器人可以很好地构建和归档应用程序,但在 Fabric 上传脚本上失败。有什么建议吗?

日志:

IPA Path: /Users/XcodeServer/Library/Caches/XCSBuilder/Integration-c7216425c354c42adb04283fc31b6348/ExportedProduct/MyApp.ipa
2016-11-17 12:40:23.967 uploadDSYM[55991:2048496] Fabric.framework/run 1.6.2 (205)
2016-11-17 12:40:23.972 uploadDSYM[55991:2048496] Launched uploader in validation mode
error: Fabric: Failed to Detect Build Environment

脚本:

IPA_PATH="$XCS_PRODUCT"
echo "IPA Path: $IPA_PATH"
"$XCS_PRIMARY_REPO_DIR"/MyApp/Pods/Fabric/run <API> <KEY> -ipaPath "$IPA_PATH" -emails me@email.com

【问题讨论】:

【参考方案1】:

解决了。我使用了错误的脚本(在设置 Fabric 时从应用程序的构建阶段提取)。您必须使用 crashlytics 脚本:

"$XCS_PRIMARY_REPO_DIR"/MyApp/Pods/Crashlytics/submit <API> <KEY> -ipaPath "$IPA_PATH" -emails me@test.com

【讨论】:

【参考方案2】:

我在集成后脚本触发器中使用此脚本

"$XCS_PRIMARY_REPO_DIR/Pods/Crashlytics/submit" <API> <KEY> -ipaPath "$XCS_PRODUCT"

【讨论】:

【参考方案3】:

在 Xcode Server 10 中测试

# Make the the encoding is correct
export LANG=en_US.UTF-8

# Remove & Copy assets
rm -r $XCS_SOURCE_DIR/ipa
cp -R $XCS_OUTPUT_DIR/ExportedProduct/Apps/ $XCS_SOURCE_DIR/ipa/

# Release the archive
$XCS_PRIMARY_REPO_DIR/Pods/Crashlytics/submit <API> <Key> -ipaPath $XCS_SOURCE_DIR/ipa/AppName.ipa -groupAliases groupName -notifications YES

在我的例子中,Xcode Server 会在归档后删除所有资产。

所以我在脚本中添加了一个“复制”命令。

【讨论】:

以上是关于Xcode CI - 用于上传到 Fabric 的 Bot 脚本给出错误“无法检测构建环境”的主要内容,如果未能解决你的问题,请参考以下文章

在不上传 dsym 的情况下删除 Fabric 缺少 dsym 警告消息

用于 XCode 的 VSTS CI 为具有手表套件扩展的应用程序构建

退出,因为上传符号在验证模式下运行

Xcode 10 测试版中的 Google Fabric

“Fabric.framework”无法打开,因为它来自身份不明的开发者 Xcode

如何使用 Fabric.js 将图像上传到画布?