未设置触发 $XCS_PRODUCT 后的持续集成 Xcode Server [英] Continuous integration Xcode Server after trigger $XCS_PRODUCT not set

查看:22
本文介绍了未设置触发 $XCS_PRODUCT 后的持续集成 Xcode Server的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个在 Xcode 6.4 下完美运行的机器人.触发后脚本使用此路径自动上传 IPA:$XCS_OUTPUT_DIR/$XCS_PRODUCT"

I had a bot that was working perfectly under Xcode 6.4. An after trigger script was automatically uploading the IPA using this path : "$XCS_OUTPUT_DIR/$XCS_PRODUCT"

但是(即使在从头开始重做机器人之后)似乎:

However (even after redoing a bot from scratch) it appears that :

  • $XCS_PRODUCT 始终为空.
  • $XCS_OUTPUT_DIR 指向一个不存在的文件夹,因为在服务器上签出后,Xcode 服务器似乎将 .ipa 存储在那里:/Library/Developer/XcodeServer/IntegrationAssets/

如何在我的后触发脚本中找到没有此变量的 .ipa?

How to find my .ipa without this variable during my after trigger script?

推荐答案

我遇到了同样的问题,经过讨论 苹果开发者论坛我发现里面实际上有.IPA文件

I had the same problem and after discussion on Apple Developer Forums I found out that there actually is .IPA file inside

/Library/Developer/XcodeServer/Integrations/Integration-INTEGRATION_ID/ExportedProduct/

目录,您可以使用类似

directory and you can access it from After Trigger Script by using something like

originalBinaryName=$(basename "${XCS_ARCHIVE%.*}".ipa)
originalBinaryPath="${XCS_OUTPUT_DIR}/ExportedProduct/Apps/${originalBinaryName}"

我也发了一个错误报告,因为 $XCS_PRODUCT 无论如何都不应该为空,并且为 .IPA 文件.

I have also sent a bug report, because $XCS_PRODUCT should not be empty anyway, and it would be nice to have new environment variable for the complete path of .IPA file.

这篇关于未设置触发 $XCS_PRODUCT 后的持续集成 Xcode Server的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆