OSX Server 3.2.1 integration build timing out when building sources - xcode

I have upgraded to OSX Server 3.2.1 and I am trying to get my bots to work again. I have one of my projects working, but when I have a workspace that tries to build I get stuck at the following message:
Integrating (step 4 of 9)...
Building sources Please wait...
This hanged for about 10 minutes and then fails with the following error:
Bot Issue: error. Build Service Error. Issue: Terminated xcodebuild
since it produced no output for too long.
There aren't any other errors I see in the error logs. Does anyone have any ideas on how to troubleshoot this issue?

The cause of my issue was due to a bug in Xcode server 3.2.1. In the previous version, it read all of its signing certificates from the system keychain. As of 3.2.1, it has its own private hidden keychain. There are 2 workarounds for this:
Override the xcode keychain with your existing system keychain (assuming your system keychain has all of your apps signing certificates already in it)
Install Server 4.0 and Xcode 6.1. Apple has assured me that this is fixed in this version, though I have not tested this without also doing the above step. Additional information is available on the Apple forums here:
https://devforums.apple.com/message/1053902#1053902

I had the same problem, and to fix it, in the target scheme, I've changed the Build Configuration of "Run" and "Analyze" to "Release" and it worked!
My scheme has no target for test, but I have another target with test and it works fine with debug configuration.

In your OS X Server account's Keychain Access app, select your certificate's Private Key and allow access by all applications.
Get Info > Access Control > Allow all applications to access this item
Source:
http://faq.sealedabstract.com/xcodeCI/#signing-for-distribution

Related

Swift Package Manager fails to authenticate when resolving dependencies

I'm currently trying to set up the work project on the new machine and I've ran into some issues with resolving package dependencies added via SPM. I've copied both private and public SSH keys from my previous machine and added a GitHub account with personal access token in Xcode settings. But whenever I try to resolve package dependencies it almost immediately fails with an error Authentication failed because the credentials were missing and prompts me with dialog asking which GitHub account and SSH key to use. I have only one account and ssh key pair on this machine, so there are no other options to choose from.
Strange enough, it does so only for public repository, which is different every time I try to resolve dependencies, since it is able to clone private repositories (which I have read access to) just fine. It is absurd because running xcodebuild -resolvePackageDependencies not only produces no similar errors, but it also resolves all package dependencies of the project successfully.
I have the exact same Xcode 13.2.1 installed on my previous machine and exactly the same RSA key. The other thing that drives me crazy is that there are no similar issues whatsoever on the brand new Xcode 13.3 released a couple of days ago. It just asks me to unlock the SSH key and then successfully resolves all dependencies. Unfortunately, I couldn't switch to newer Xcode version at the time, so I'm stuck with these SPM issues for now.
Steps I've taken so far to resolve the issue:
Tried generating a new SSH key following this guide from GitHub;
Tried using ECDSA algorithm instead of RSA for ssh-keygen;
Tried resetting package caches;
Tried downloading the same Xcode archive from Apple Developer portal again and again;
After all tried rebooting the machine.
After a day of troubleshooting I was not able to resolve the issue. It is very strange to me that xcodebuild resolves packages with no problem at all, but resolving packages from Xcode throws authentications errors at me.
I would appreciate any help solving this puzzle! Thanks!
Seems like the problem was in combination of my new machine and Xcode 13.2.1. As I mentioned in my question, Xcode 13.3 does not have this issue, so for the past 7 months starting from asking this question, I haven't encountered any problems with SPM whatsoever even on the newer versions of Xcode.

Missing entitlement - 'UIBackgroundModes' value 'workout-processing' without the required entitlement 'com.apple.developer.healthkit'

I have released my app a couple of times and had the process under control until most recently when I updated from XCode 9 to XCode 10 due to a 3rd party lib requirement.
Everything seems fine when I compile and run on the emulator; but, when I come to the "Validate" (Archive) the app prior to uploading to the app store I am getting an error.
My Setup:
MacOS 10.14.2 (Mojave)
Using XCode 10.1 (10B61)
Error message:
Missing entitlement. watchOS extension
'XXX.app/Watch/aw-xxx.app/PlugIns/aw-xxx Extension.appex' uses
'UIBackgroundModes' value 'workout-processing' without the required
entitlement 'com.apple.developer.healthkit' signed into the bundle.
Watch Extension Capabilities:
The app is built using cordova-8.1.1 and cordova-ios-4.5.5
cordova build ios --buildFlag='-UseModernBuildSystem=0'
In addition to that, the project on XCode 10 has been set to 'Legacy Build System' on File -> Project Settings.
Lastly, the 'aw-xxx Extension.entitlements' has the 'HealthKit' key value set to 'YES' under the 'aw-xxx Extension' folder as one could expect.
Any help or pointers would be much appreciated.
I'm happy to provide more info, logs, etc as well, thanks!
After following the comment below I managed to get my app to validate once again on XCode 10:
Hi #guikeller Just wondering if it is related. I had similar issue while doing a ionic cordova app release. I figured the
com.apple.developer.healthkit
is missing in my platforms/ios/myApp/Entitlements-Release.plist. It does exist in Entitlements-Debug.plist. All I did is copied the key from the debug file to release and app store accepted it.
Source: https://github.com/apache/cordova-ios/issues/475#issuecomment-450174628
In addition to that, I was also able to submit my app into the app store.

AdHoc build not getting archived with Titanium SDK 3.2.0

I have implemented cross platform application using Titanium 3.2.0 but when i try archiving the build for iOS AdHoc distribution, it does not get compiled. It keeps giving error with developer name as mentioned below - Invalid "--distribution-name" value ""
I tried building from XCode, Titanium UI and over Terminal as well but same error everywhere. I have referred https://jira.appcelerator.org/browse/TISTUD-5642 and it says that issue is fixed but i still face this issue over every machine updated to 3.2.0 or even when 3.2.0 is installed fresh.
Please help and provide information.
Regards.
Sounds like your Application IDs don't match from your project to your Provisioning Profile.
In your Tiapp.xml file, you may have and application id like com.mycompname.THISappname, but you told the Apple Provisioning Profile that your app id was called com.mycompname.OTHERappname. So they don't match. Change your Tiapp.xml file to match the what the Apple Provisioning Profile expects or creating another profile matching your application id in Titanium Studio.
this worked for me: create a new production certificate AND create a new provisioning profile with the same bundle ID. (Yes, this will work if you are updating an app that is already live). Download the cert and prov. profile and run both (double click). Now repeat step 6 and archive. This should work.

Xcode Bot CI Service SVN issues

I am not able to integrate Xcode 5 Bots successfully. I am using https://svn source to access my repository. The Xcode service error log is not that helpful. Did the following so far.
Self signed flag is set to true in the plist.
In the KeyChain the self signed cert is both in 'System' and 'login'.
Tried both Xcode 5.0.2 and 5.1DP
Is there anything that I am missing? Can Xcode service access SVN through https?
Error log attached
http://pastebin.com/jSpzXxQh
Xcode should be able to - generally - but I had problems with it as well. I found a solution with svn+ssh that worked for a while (see) - but then I misconfigured something and it all went away.
I'd suggest to setup a GIT repository clone on a Mac Server (free for devs) and, if needed, sync the GIT with SVN using subgit. Setting it up did not take too long.

My monotouch application refuses to compile for distribution with Array index is out of range

I am unable to compile my app in Monotouch when I select the full enterprise distribution profile I have setup. All the other profiles work ok.
To be specific: when I hit the build button I get
Detecting signing identity...
0 errors 0 warnings, just Build failed. Array index out of range
I am guessing this is a provisioning issue and I have failed to do something important.
There are pointers on the web to adhoc ditribution builds but no real documentation on full enterprise distribution.
I have the following:
Monotouch : Enterprise edition
Apple : Enterprise membership, have installed the corp certificate & dev user certificate and downloaded the provisioning certificates for dev, adhoc & enterprise and finally created the App ID.
I have spent 2 days scouring the web for similar problems but have found nothing really close. At one point I scrubbed all my profiles with Apple Dev site and re imported them and this resolved some other issues I was having.
Having the full enterprise rights/certificate means I do not need UDIDs, I just have to sign my life away to prevent illegal ditribution. The only thing other than just plain missing something on the provisioning front is that the UDID's are held in an array in the certificates and as I have none specified for this build it errors out. (But it shouldn't surely!)
If I use the adhoc distribution which as UDID's specified in it I can load it on my machine.
Any pointers would be greatly received
I had a similar situation.
"mtouch failed to build". No other messages.
Had to go through tech support and eventually found it was a compiler bug and they sent me a patch for my particular case. I assume it will come out in the next release.
However, I did learn two things along the way that may help you.
a) in my case the problem went away if I changed the "Linker Behavior" setting for the project. Project-> [project] Options -> Build -> iPhone Build -> Linker Behavior
Try all available options. See if makes a difference.
b) On the same iPhone Build options page you can enter "-v -v -v" to the "extra arguments setting. Now check the build output after compiling. There may be additional details.
Finally, I pulled my hair out for a few days with an error similar to yours. In the end it was a compiler bug. Novell was quite quick to identify and fix the bug. Maybe just log it with them and see what happens.
Good luck
I had this problem when switching between my "test" and "release" builds, which had different app identifiers -- I'd switched to the "release" provisioning profile, but I forgot to fix the app display name and app identifier under Build / iPhone Application. Doubt the display name makes a difference but the app identifier certainly does.

Resources