Upload dSYM to Firebase using run script

I'm trying to upload dSYMs in Build Phases using Fabric's upload-symbols shell script. When I run my script in Terminal it works every time. When it's run by Xcode during a build it works around 10% of the time. When it fails, it always fails at the step: "Begin processing dSYM".


It is the last phase in Build Phases. This is the debug output when it hangs:

upload-symbols[14391:269314] debug: Inspecting next path: <path to dSYM file>
upload-symbols[14391:269314] debug: Found dSYM at path: <path to dSYM file>
upload-symbols[14391:269318] debug: Begin processing dSYM at <path to dSYM file>


I let it run overnight once to ensure it wasn't just a timing issue, but in the morning, it was still hung at the same place. When it succeeds, it completes the upload within seconds.


Any ideas why it might be hanging as a run script but not when run in Terminal?

Replies

Did you ever find a solution to this? We are currently having the same problem where the upload-symbols script will just hang indefinetly, but running it on the command line works fine and completes within seconds.

Could you share the script you are using? I am trying to do the same thing.

I had the same issue and resolved it by adding


sleep 0.5


at the beginning of my upload DSYMs script phase.

It seems that the dSYM path couldn't be resolved when the upload command runs too early.

Depending on how fast your Mac is you may need to sleep a little longer.


Edit: This was working fine on my iMac, unfortunately it still doesn't work on my Macbook Air even after increasing to 3 seconds :/