I am setting up an Xcode Bot to automatically upload and distribute my beta app.
I have setup a mac with macOS Server and Xcode activated and am able to build and export an IPA manually just fine.
The Xcode Bot I created also archives and exports an IPA with no problem.
However, when I try to run the Crashlytics submit script in the Xcode Bot's post triggers, the uploading fails. But if I save the bot generated IPA and manually call the Crashlytics script via Terminal, it uploads just fine. It seems that only the Xcode Bot fails to submit to Crashlytics.
I have all the correct certificates installed on the server Keychain and everything works fine for manual archive/export both in Xcode and using the Xcode Bot's generated IPA.
Here is the log from Xcode Bot:
2016-11-22 17:15:53.942 submit Crashlytics: Crashlytics.framework/submit 1.3.5 (18)
2016-11-22 17:16:03.125 submit Crashlytics: Unable to package source due to error: Error Domain=CLSIPABuilderErrorDomain Code=-6 "(null)" UserInfo={UnderlyingError=Error Domain=CLSCodeSignerErrorDomain Code=-2 "(null)" UserInfo={arguments=(
"--sign",
ACFE8B8E177196BFF1974841752020FE96687508,
"--all-architectures",
"--force",
"--entitlements",
"/var/folders/81/5t89fdcn3h3680gh99mgvl7934dkfg/T/com.crashlytics.ipas/E357A31C-B1A2-424B-8A5A-E7D499A92C73/Payload/entitlements.xml",
"/var/folders/81/5t89fdcn3h3680gh99mgvl7934dkfg/T/com.crashlytics.ipas/E357A31C-B1A2-424B-8A5A-E7D499A92C73/Payload/Ebates Beta.app"
), environment={
"CODESIGN_ALLOCATE" = "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/codesign_allocate";
}, status=1, stderr=ACFE8B8E177196BFF1974841752020FE96687508: no identity found
, command=/usr/bin/codesign, stdout=}, SourcePath=/var/folders/81/5t89fdcn3h3680gh99mgvl7934dkfg/T/com.crashlytics.ipas/E357A31C-B1A2-424B-8A5A-E7D499A92C73}
2016-11-22 17:16:03.187 submit Crashlytics: Failed to prepare the binary for release
Been pulling my hair out over this all day, hoping someone can shed some light on this problem.
Ok so turns out you need to run the app on a device directly from Xcode on the server machine so that Xcode will automatically generate all the appropriate XC iOS provisioning profiles. Apparently the Crashlytics script will re-package the IPA and need valid provisioning profiles in order to do so. I think the Xcode Bot generates an IPA but it is not fully code signed until you save from the bot results, instead of just running from a bot post-trigger.
If you go to the developer.apple.com portal and look under Provisioning Profiles you should see something like this:
Related
I am working on a script that uploads and distributes the IPA file to a particular group through the app center. To serve this purpose, I am using the app center CLI command app center distribute release.
appcenter distribute release --token “XXXXXXXXXXXXXXXXXXXXXXXXXX” --app "ownerName/appName" --group "groupName" --file "path-to-ipa-file" --release-notes "Distributing from local machine" --debug
While executing this command, I am getting below error
/ Aborting release upload...Response status code: 200
Body: {}
Release upload was aborted
Error: release binary file uploading failed: HTTP 400 Bad Request
However, I receive this error while uploading the IPA file which is generated through xcodebuild command. Just to clarify, the IPA file generated through xcodebuild command is working fine in iOS devices. But if I upload the IPA file, which is generated through the app center itself then the same command is working fine and the IPA file is uploaded and distributed successfully on the app center. (Right now I have integrated app center to build the application and distribute it but I am moving the build part somewhere else so I just want to use it as a distribution tool)
I am stuck in this issue from last two weeks. It would be really great if someone can help me to solve this issue.
So finally I found the reason behind the issue. I found that the provisioning profile used to build the app was expired and due to that the generated ipa file does contain profile but expired one. So appcenter consider the ipa file is invalid and could not upload it.
Try uploading the ipa manually on appcenter.ms. We had this issue when appcenter could not process the binary itself. You will be able too see the error there.
(Continuing from title) and failing to upload on the organizer.
I wanted to make an ipa file for publishing on TestFlight, but Xcode gives me an error saying:
I built by going to Product > Archive. I'm new to this, and I've been creating profiles, Bundle IDs and Certificates for this app. If you know a successful way of uploading a build on TestFlight or creating a .ipa file, please say so.
I got it! I tried this on my dad's macbook and it archived successfully! I just put the project on bitbucket, and it was clean from all of the certificates and profiles and took a tutorial on uploading sticker apps and followed it thoroughly. I guess I didn't handle the Bundle IDs properly. (Also make sure your code sigining is correct)
I want to test an iOS application using Xamarin Test Recorder using iOS simulator. To do that I want to publish the project. When trying to publish it for archive, I got this error:
/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/iOS/Xamarin.iOS.Common.targets: Error: No valid iOS code signing keys found in keychain. You need to request a codesigning certificate from https://developer.apple.com. (MobileApp1.iOS)
Do we need a certificate to publish the project?
When I drag and drop the .app to simulator it doesn't get installed. When I tried to install debug version it gives below error. Failed to chmod /Users/../Library/Developer/CoreSimulator/Devices/8A0508B3-02E8-4601-A239-B6712F67FF4D/data/Library/Caches/com.apple.containermanagerd/Bundle/Application/1B8A7B17-D9D0-44A6-8584-657FF1AB5815/MobileApp1.app/MobileApp1 : No such file or directory" Release app also not get installed(No error or warning). Note that this is a xamarin project.What shall I do now?
First of all you do not need to sign/publish your app to use it with Test Recorder.
You can start recording tests from .app located on bin/iPhoneSimulator/Debug/ folder.
The “No valid iOS code signing keys found in keychain” happens when there are no provisioning profiles on your machine. The easiest fix is to create a new app from XCode and deploy it on the device, XCode will automatically downloads the required profiles and certificates
I am very new in ionic iOS building. I got struck while not able to build the ios production .ipa file in ionic.io.
By referring the site
My Working Platforms:
Windows 8.1,
ionic.io,
Commands using CLI for running the app in browser and building.
For IOS Development,
I can able to create the p12 and mobile provisioning certificates in apple developer portal.
I can able to upload those files in the settings tab in the profile tag in ionic.io
I got my success build .ipa and ran into my iOS devices that working fine.
For IOS Production,
I can able to create the p12 and mobile provisioning certificates in apple developer portal.
I can able to upload those files in the settings tab in the profile tag in ionic.io
The build was failed in ionic.io. When i click the output link displaying the following error,
=== BUILD TARGET XXXX OF PROJECT XXXX WITH CONFIGURATION Debug ===
Check dependencies Code Sign error: No code signing identities found:
No valid signing identities (i.e. certificate and private key pair) were found.
** BUILD FAILED **
Can anyone help to resolve it
I am trying to implement Jenkins CI to generate build for iOS. I have latest Xcode 7.1 installed and ipa is getting generated without error. While trying to install the ipa through download link I am getting an error saying "Cannot install this time". Also I tried to install the same through iTunes, but getting an error saying "1 item could not be synced" and iTunes showing an error saying "The app "xxxxx" was not installed on the iPhone "xxxxxx" because an unknown error occurred (0xE8000005)".
Code signing certificate & provisioning profiles are proper and I am able to install the ipa generated from XCode.
Any help would be appreciated. Thanks :)
I was facing the same issue. Using Jenkins 2.5 and Xcode 7.3.1. Jenkins successfully build iOS app packaged the ipa, but the ipa did not install on the iPhone neither with iTunes nor when downloaded from TestFairy. Getting the same error "The app "xxxxx" was not installed on the iPhone "xxxxxx" because an unknown error occurred (0xE8000005)".
In the Jenkins logs I noticed following:
22:03:10 ### Checking original app
22:03:10 + /usr/bin/codesign --verify -vvvv /Users/jenkins/.jenkins/workspace/app-ios-build-job/build/MyAppProd.app
22:03:10 Program /usr/bin/codesign returned 1 : [/Users/jenkins/.jenkins/workspace/app-ios-build-job/build/MyAppProd.app: a sealed resource is missing or invalid
22:03:10 file added: /Users/jenkins/.jenkins/workspace/app-ios-build-job/build/MyAppProd.app/MyAppProd.app
22:03:10 ]
22:03:10 Codesign check fails : /Users/jenkins/.jenkins/workspace/app-ios-build-job/build/MyAppProd.app: a sealed resource is missing or invalid
22:03:10 file added: /Users/jenkins/.jenkins/workspace/app-ios-build-job/build/MyAppProd.app/MyAppProd.app
22:03:10
22:03:10 Done checking the original app
On further search found the answer posted by bladebunny at https://github.com/Carthage/Carthage/issues/782
Issue turned out to be duplicate package commands on Jenkins that resulted in the app being signed twice -- and then causing install to fail. Solution was to change Jenkins Xcode plugin settings. Under the 'General Build Settings' - we found you can't check both "Generate Archive" and "Pack application and build .ipa?" settings. The plugin issues log seems to suggest the former setting is being deprecated. We use the latter setting and are now able to successfully deploy the app with our custom dynamic framework.
The above fix worked for me.