jenkins build fail on another Mac due to provisioning profile not found - ios

I am trying to build project on another mac,not the one on which I'm developing.And I chose Jenkins to help with it.
I have seen similar questions,but my situation seems different.
Below is the log from Jenkins console:
something has been done before:
export the profile from organizer of the old one and import to the new one.
copy the keys from keychain and copy to the new Mac's keychain,including system.
specify the name of provisioning profile in the project.
I'm not sure if anyone has seen the same thing,but if anyone does,please kindly show me some tips to overcome this,thanks.

The steps you included are for copying/replacing certificates and identities. Provisioning profiles are different.
The provisioning profiles are located under ~/Library/MobileDevice/Provisioning Profiles. Please note these have to be available for the user under which Jenkins is running.
Locate the provisioning profile on your old machine, and copy it to the new. The provisioning profile has a filename <UUID>.mobileprovision. The UUID is the number you see in your error message
Alternatively, launching Xcode on the new machine, and letting it sync with all latest profiles would work too, as long as your run it with Jenkins' user.

Related

Issue with Provisioning profiles for IOS when using Archive for Publishing on VS for Mac

I am trying to Publish my first App for IOS Distribution, on my Macbook Air using VS Studio for Mac V17.4.2 and XCode V14.2.
I have created and downloaded the certificates and provisioning profiles.
When I try the Archive for Publish on VS I get an error:
Could not find any provisioning profiles for project on IOS
When I look at the project Bundle Signing settings I get following screen:
The bundle identfier eg com.companyname.project is the same in project properties and provisioning profile.
The signing certificates for IOS Distribution are loaded into Xcode.
Can anyone please indicate to me as how to resolve the above error.
One thing I am not sure is where VS is looking for the provisioning profile file as it is currently in my downloads folder and I have clicked on.
Thanks
Have tried looking online but could not find any solution.

Jenkins with Xcode 8 - Cannot find Provisioning Profiles

Jenkins cannot find our recently updated provisioning profiles and after trying every known solution I'm running out of ideas what could be wrong.
Build jobs fail with error:
No profile matching 'xxxxx' found: Xcode couldn't find a profile
matching 'xxxxx'.
The build server is a Mac, running Xcode 8 and we're using Jenkins with the Xcode plugin.
Building and signing with Xcode 8 directly on the same machine is successful and I installed all the required profiles by double-clicking them.
Does anyone know any workable solution to fix this issue?
Put your provisioning profiles under
User/Shared/Jenkins/Library/Mobile Device/Provisioning Profiles.
You have to create manually folder under Library folder.
And make sure that your Distribution certificate is in "System" tab in keychain Access. If not then copy from "Login" tab and paste under "System" tab.
The fix for myself was giving the jenkins user proper permissions for the ~/Library/MobileDevice folder and the ~/Library/MobileDevice/Provisioning\ Profile.
Otherwise the jenkins user can't read from the provisioning file folder.

"No code signing identities found" error building cordova app for iOS device

I am trying to build a cordova app for iOS here on my Mac, and I am plagued by the "No codesigning identities found" error. Based on other posts, the frequent resolutions include stopping and restarting Xcode and rebooting, and redownloading the provisioning profile. None of that has worked for me.
It is odd because I reference the provisioning profile by GUID in my build.json, but the error mentions the profile by name. This indicates to me that something somewhere is successfully locating the profile. So I am not sure why it isn't able to use it.
I get the error when I build at the command line using:
cordova build ios --device --buildConfig="build.json"
I would think I should be able to reproduce the issue by building in Xcode, but when I load the cordova project in Xcode and build it, it seems to be fine. But perhaps I am not doing the equivalent step in Xcode. I am just choosing to "Build" in Xcode. Perhaps there is another way to do the equivalent in Xcode?
This same codebase does build successfully on our build box, so this is undoubtedly a config issue here on my Mac. What do I need to do besides download and install the provisioning profile? I have done this both by downloading from Apple Developer and by directly installing through the Xcode preferences.
Below is the exact error I am getting:
Code Sign error: No codesigning identities found: No codesigning identities (i.e. certificate and private key pairs) that match the provisioning profile specified in your build settings (“[the name of our profile]”) were found.
I am a relative novice building an app developed by someone else. I have tried everything near the top of the Google search results for this error, but not much else. I am likely missing something obvious. Pointers and help would be greatly appreciated.
I had not installed the Enterprise distribution certificate with the private key here on my Mac. Once I did that it worked.

Xcode's Bot always returns error

I got an issue with Xcode's Bot. It always returns the "User canceled the operation. Command /usr/bin/codesign failed with exit code 1" error string after running the command below:
/usr/bin/codesign --force --sign <MY_PRIVATE_KEY> --entitlements /Library/Developer/XcodeServer/Integrations/Caches/2cdd321641e8c114e4eba9819b017479/DerivedData/Build/Intermediates/MyApp.build/Debug-iphoneos/MyApp.build/MyApp.app.xcent /Library/Developer/XcodeServer/Integrations/Caches/2cdd321641e8c114e4eba9819b017479/DerivedData/Build/Products/Debug-iphoneos/MyApp.app
I can run this command in Terminal with sudo. I'm using Xcode 6.3.1 and OS X Server 4.1.53 in my Mac 10.10.4.
Thank for your help.
This looks like a code signing error. There are a few different reasons for this to happen so you will need to do some troubleshooting. Can other bots build on your server? If so then its probably a build settings issue in this specific project.
In the Xcode Project go to the Project Target that your trying to build, and then Build Settings, and Code Signing. Under the Provisioning Profile you can either choose Automatic or explicitly choose the correct provision, and then under the Code Signing Identity choose iOS Developer. This is probably where your issue is if its related to the project. Do you have a proper provision setup for the project on the Apple Developer Portal?
If you can't get any bots to run on your server then the issue could be with how you set up Xcode Server. Have you added the server to your team? Here is the blog post that I used to get mine up and running, although you don't need to do all of those steps in the post. Focus specifically on the Setup Certificates section and Setup Provisioning Profiles section.
I fixed the issue by copying the missing provisioning file from my local directory "/Users/phuongle/Library/MobileDevice/Provisioning Profiles" to "/Library/Developer/XcodeServer/ProvisioningProfiles". Do not use the downloaded provisioning file from developer.apple.com directly.
I just want to note here for everyone having the same issue with me.

No code sign identities found: setting up jenkins

Trying to setup jenkins for AdHoc Distribution, tried by using homebrew, mountain lion with xcode 5.
Also tried using Jenkins App
Following is the error returned by jenkins
Code Sign error: No codesigning identities found: No codesigning identities (i.e. certificate and private key pairs)
that match the provisioning profile specified in your build settings (‚xxxxxxx) were found.
Project is getting successfully build using command line and in jenkins if I try for iPhone simulator then also its working fine.
I would like to know any tutorial by which it will be easy to setup jenkins and also please let me know any specific steps needed to give access to keychains.
any help really appreciated.
The core reason is Jenkins is running as daemon mode in Mac, just assume it is a different user - "Jenkins", so it will not have access to the keychain or provision profile as a you login using your credentials, which cause the code signing issue.
I found I have following 2 errors
"Code Sign error: There are no valid certificate/private key pairs in the default keychain"
Solution: Copy your iPhone developer certificate from "login" keychain to "System" keychain.
Detailed steps:
open the "Keychain Access" application, click the login tab, right click the certificate like "iPhone Developer: your_name (XXXXXXX)", choose copy, then click the "System" tab, right click mouse, choose "Paste 2 items"; you might need to do the same thing with the certificate like "iPhone Distribution: your_name".
After doing this, you will get the second error.
"Code Sign error: Provisioning profile 'xxxxx-xxxx-xxxx-xxxxx' can't be found"
Solution: Copy the provision profile to Jenkins user folder.
The provision profile is under in the folder
/YourUserName/Library/MobileDevice/Provisioning Profiles,
for example in my machine, the provision profile files are under /Users/steve/Library/MobileDevice/Provisioning Profiles
In the mac, the Jenkins will be in /Users/Shared/Jenkins, create the following folder:
/Users/Shared/Jenkins/Library/MobileDevice/Provisioning Profile, then copy the .mobileprovision file to this folder.
After doing this, the code signing issues will be fixed. Hope my finding will be helpful to other Jenkins users.
Ref: http://code-dojo.blogspot.com/2012/09/fix-ios-code-signing-issue-when-using.html
Credit: Steve Zhang

Resources