Xcode Server Continuous Integration After Starting $ XCS_PRODUCT Not Installed

I had a bot that worked fine under Xcode 6.4. After the trigger, the script was automatically loaded by the IPA using this path: "$ XCS_OUTPUT_DIR / $ XCS_PRODUCT"

However (even after re-entering the bot from scratch), the following appears:

  • $ XCS_PRODUCT is always empty.
  • $ XCS_OUTPUT_DIR points to a folder that does not exist, because after checking on the server it appears that the Xcode server stores .ipa: / Library / Developer / XcodeServer / IntegrationAssets /

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

+6
source share
1 answer

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

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

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

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

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

+4
source

All Articles