[iOS] Remote build failing to package stub ipa. (RSync)

Hey guys,

We’ve recently updated to 4.11.1 and are having issues with remote building of ipa’s.

On a fresh checkout of the engine and project we are getting the following in the build log:

2>   ... 'D:\Perforce\xxxxxx\Submerged_Mobile\MobileTest\Intermediate\IOS\MobileTest.xcodeproj\project.pbxproj' -> 'D:\Perforce\xxxxxx\Submerged_Mobile\MobileTest\Intermediate\IOS-Deploy\MobileTest\Development\..\XcodeSupportFiles\project.pbxproj.datecheck'
2>        Copy: D:\Perforce\xxxxxx\Submerged_Mobile\MobileTest\Intermediate\IOS\MobileTest.xcodeproj\project.pbxproj -> D:\Perforce\xxxxxx\Submerged_Mobile\MobileTest\Intermediate\IOS-Deploy\MobileTest\Development\..\XcodeSupportFiles\project.pbxproj.datecheck, last modified at 1/01/1601 11:00:00 AM
2>EXEC : IPP warning : Failed to copy file to 'D:\Perforce\xxxxxx\Submerged_Mobile\MobileTest\Intermediate\IOS-Deploy\MobileTest\Development\..\XcodeSupportFiles\project.pbxproj.datecheck'
2>EXEC : IPP warning : Exception: Could not find a part of the path 'D:\Perforce\xxxxxx\Submerged_Mobile\MobileTest\Intermediate\IOS\MobileTest.xcodeproj\project.pbxproj'. (going to retry copy)

These files no longer seem to get generated. However on a copy of the engine which still has the cache (old generated files) the build gets further, but then fails to sign it correctly.

I’ve tested this in a blank project as well, (after blowing away all the caches on the mac and PC) and am still seeing the same issue.

I’m attaching a full copy of the build log [HERE.][1]

We are using the Rsync method, and have had no issues with it in 4.10

Cheers.

86266-buildlog.txt (39.2 KB)

,

Did you upgrade to 4.11.1 using binary or source? Are you able to replicate this same error on new template for iOS? Have you checked to make sure that the certificates and provisions are the correct ones, and are installed properly?

Looking forward to hearing back from you, thanks!

We’re using 4.11.1 source.
And yes to all the other questions.

As far as I’m aware you can’t use rsync with the binary install anyway.

Hey ,

It looks like the errors popping up are related to your certificates. Please review [this thread][1] and [this forum post][2] to verify that you have all proper certificates set up. Please upload your newest log with your next reply.

IPP error : RPCCommand PrePackage failed with return code Error_Unknown
IPP error : RPCCommand CreateKeyChain failed with return code Error_Unknown
IPP error : RPCCommand MakeApp failed with return code Error_RemoteCertificatesNotFound
IPP error : RPCCommand DeleteKeyChain failed with return code Error_Unknown
IPP error : RPCCommand Zip failed with return code Error_Unknown
IPP warning : Error in previous command; suppressing: GetStubIPA


System.Exception: IPP ERROR: Failed to copy file to D:\Perforce\xxxxxx\Submerged_Mobile\MobileTest\Intermediate\IOS-Deploy\MobileTest\Development\..\XcodeSupportFiles\project.pbxproj.datecheck and there are no more retries!IPP ERROR: RPCCommand SetExec failed with return code Error_UnknownIPP ERROR: RPCCommand EnsureProvisionDirExists failed with return code Error_UnknownIPP ERROR: RPCCommand InstallProvision failed with return code Error_UnknownIPP ERROR: RPCCommand PrePackage failed with return code Error_UnknownIPP ERROR: RPCCommand CreateKeyChain failed with return code Error_UnknownIPP ERROR: RPCCommand MakeApp failed with return code Error_RemoteCertificatesNotFoundIPP ERROR: RPCCommand DeleteKeyChain failed with return code Error_UnknownIPP ERROR: RPCCommand Zip failed with return code Error_Unknown

Thanks!

Rsync: Remote Certificates Not Found - Mobile - Epic Developer Community Forums
[2]: Developing for iOS on Windows: How To - Mobile - Epic Developer Community Forums

So first off, no it is not related to the certificate as in the log provided there is the following:

2>    .. .. Installed certificate 'iPhone Developer: xxxxxxxxxxxx (xxxxxx)' is valid (choosing it) (range '23/02/2016 11:17:36 AM' to '22/02/2017 11:17:36 AM')
2>    Picked 'Submerged.mobileprovision' with AppID 'xxxxxx.com.uppercut-games.submerged' and Name 'SubmergedDev' as a matching provision for the game 'MobileTest'
2>   ... 'C:\Users\xxxx\AppData\Local/Apple Computer/MobileDevice/Provisioning Profiles/Submerged.mobileprovision' -> 'D:\Perforce\xxxxxx\Submerged_Mobile\MobileTest\Intermediate\IOS-Deploy\MobileTest\Development\..\XcodeSupportFiles\xxxx-PC_UE4Temp.mobileprovision'
2>        Copy: C:\Users\xxxx\AppData\Local\Apple Computer\MobileDevice\Provisioning Profiles\Submerged.mobileprovision -> D:\Perforce\xxxxxx\Submerged_Mobile\MobileTest\Intermediate\IOS-Deploy\MobileTest\Development\..\XcodeSupportFiles\xxxx-PC_UE4Temp.mobileprovision, last modified at 16/03/2016 9:50:59 AM

Which means it has found the correct ones, and is using it. This is a completely different issue.
The Error_RemoteCertificatesNotFound is wrong as the build process has failed MUCH further up the chain (In the StageMacFiles step, i.e. it doesn’t even have the files ON the mac to sign the stub correctly)

I should also note that I’m using the SAME certificate on a second unreal project with no issues whatsoever remote building using the SAME machines. It was purely the upgrade to 4.11 which stopped the build from working.

I have actually solved our issue and will post it as a separate answer,
however I will state again; It is NOT certificate issues, please make sure you read the log more carefully next time.

One stage failing leads to all the subsequent steps failing as well. (The build should probably be stopped if a step fails rather than continuing.)

So after a full day of screwing around I’ve found that Unreal’s automatic build tool doesn’t build all the required tools needed for remote building.

I’m not sure which specific tool it was, but after manually building iPhonePackager, DeploymentInterface and MobileDeviceInterface it now builds correctly with no issues.

So one of the tools was failing/not working correctly silently causing massive issues in the build chain.

TL;DR: One of the build tools were out of date, and manually compiling them fixed it.

, I am having the same issue. How do you manually build those 3 tools?

All you need to do is open the UE4 solution, go down to the ‘Programs’ folder in the Solution Explorer, and then right-click on the tool you want to rebuild, and just hit build/rebuild.

Simple as that. :slight_smile: