Post not yet marked as solved
My project has UI tests with total length of ~50 minutes. I'm using Xcode Cloud for builds delivery, UI tests execution is the part of the workflow. When I was using Monterey as tests environment everything was fine, but now it's no longer available so i had to switch to Sonoma. Since this i wasn't able to run anything but a couple of separate UI tests, when I run all of them I'm having 2 major issues. Locally on my machine I have the same Xcode/MacOS/simulator versions and everything works perfectly, issues only appear on Xcode Cloud. Here are they:
There is a huge time gap between build-for-testing is finished and test-without-building is started. The gap is more than 1 hour so the sum of build time, ui tests time and the gap results in more than 2 hours and tests execution fails with the timeout. Funny is when I try to run the a single UI test or just run unit tests this gap only lasts for like 2-6 minutes, but when I add more tests the gap goes huge and fails everything. Also I guess my company is paying for those gaps and runs of tests when they timeout because of it even tho it's not our fault.
Second issue is that some UI tests just freeze in the meddle of execution. This happens when UI tests is trying to interact with text fields on modal view controllers, sometimes it happens during the text field lookup, sometimes - after it takes focus and test is trying to type things into it. This is cannot be dodged anyhow and it is not related to some specific code - I've intentionaly rewritten the whole view controller from UIKit to SwiftUI , changed the way I present it and the location of presentation. Looks like just having a text field on a modal view is enough for test to freeze.
Have anyone experienced something like this? Found any solutions?
Post not yet marked as solved
[!] The Runner [Debug] target overrides the ENABLE_BITCODE build setting defined in `Pods/Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig'. This can lead to problems with the CocoaPods installation
How to fix this error ?
Hello all!
Since past Thursday, using this cURL:
curl -X POST \
'https://api.appstoreconnect.apple.com/v1/ciBuildRuns' \
--header 'Accept: */*' \
--header 'User-Agent: Thunder Client (https://www.thunderclient.com)' \
--header 'Authorization: Bearer XXXX' \
--header 'Content-Type: application/json' \
--data-raw '{
"data": {
"type": "ciBuildRuns",
"attributes": {},
"relationships": {
"workflow": {
"data": {
"type": "ciWorkflows",
"id": "NNNN"
}
},
"sourceBranchOrTag": {
"data": {
"type": "scmGitReferences",
"id": "NNNN"
}
}
}
}
}
Of course, I removed the sensible information from my sample.
This is the response:
{
"errors": [
{
"status": "500",
"code": "UNEXPECTED_ERROR",
"title": "An unexpected error occurred.",
"detail": "An unexpected error occurred on the server side. If this issue continues, contact us at https://developer.apple.com/contact/."
}
]
}
I have written to Apple Support twice since they assure me that I will have a response in 2 working days, but I have not had any response.
The rest of the API calls work correctly.
Post not yet marked as solved
Since the release of Xcode 15, my tests aren't functioning on Xcode Cloud. The login screen, which is a web view, isn't loading correctly during the Xcode Cloud UI tests, as depicted in the screenshot below:
Any insights on what might be causing this error? We haven't made any changes to this feature, and it operates smoothly locally.
Post not yet marked as solved
I can access my Build Workflows in Xcode via Report Navigator -> Cloud. I also used to see the builds on AppStoreConnect -> Select App/Framework -> Xcode Cloud Tab, but it has abruptly stopped working. I see an error message as below.
The page you’re looking for can’t be found. The page you’re looking for does not exist, or you do not have permission to view it.
I confirmed with my Developer Program Account Holder that they are also seeing the same error.
Any suggestions to solve this?
Post not yet marked as solved
Since today (and the release of the stable Xcode 15.3 to Xcode Cloud), release builds for visionOS are failing with following error:
Unable to find a destination matching the provided destination specifier: { generic:1, platform:visionOS }
...
{ platform:visionOS, id:dvtdevice-DVTiOSDevicePlaceholder-xros:placeholder, name:Any visionOS Device, error:visionOS 1.1 is not installed. To use with Xcode, first download and install the platform }
Yesterday the build worked with 15.3 RC (although I couldn't release it because the RC wasn't the newest one and RC2 hasn't been added to Xcode Cloud).
Has anybody found a solution or is it something, Apple has to fix?
Post not yet marked as solved
The available environment variables have this:
CI_BRANCH
The name of the source branch that Xcode Cloud checked out for the current build, for example, main.
However, this is only available for builds started by a branch change. I tried using it in a manual build, and it was just an empty string. Is there a way to get the branch name for manually started workflows? You have to choose a branch to start one, so I'd assume that info is available somewhere.
Post not yet marked as solved
I want to use a ci_script to change the CI_BUILD_NUMBER to a new value.
But in XCODE CLOUD there seems to be no programmatic way to change it?
I'm setting up my XCode Cloud workflows based on an existing CICD pipeline. One of the things I'd really like the workflow to do is upload an IPA file to BrowserStack, which is the tool we use for our testing. I have a curl command which will do that:
curl -u "<username>:<api key>" -X POST "https://api-cloud.browserstack.com/app-live/upload" -F "file=@/path/to/app/file/Application-debug.ipa"
So I added this to the ci_post_xcodebuild script:
if [[ $CI_XCODEBUILD_ACTION = "archive" ]];
then
curl -u "$BROWSERSTACK_USERID:$BROWSERSTACK_APIKEY" -X POST "https://api-cloud.browserstack.com/app-live/upload" -F "file=@$CI_ARCHIVE_PATH"
curl -u "$BROWSERSTACK_USERID:$BROWSERSTACK_APIKEY" -X POST "https://api-cloud.browserstack.com/app-automate/upload" -F "file=@$CI_ARCHIVE_PATH"
fi
But I got an "incorrect extension" error. Once I echoed the $CI_ARCHIVE_PATH, it was obvious why - it was leading to a file called build.xcarchive.
Is there any way to get access to the IPA file? There's a different curl command that will upload an IPA file from a URL, so I could try getting the URL for the build from App Store Connect? It has to be a public URL, though, so I'm not sure BrowserStack would be able to access our builds.
Since yesterday, we have experienced Xcode Cloud failing to upload our archives to TestFlight/App Store.
Unsupported SDK or Xcode version?
Here is one of the error messages we see on Xcode Cloud:
Unsupported SDK or Xcode version. Your app was built with an SDK or version of Xcode that isn’t supported. Although you can use beta versions of SDKs and Xcode to build and upload apps to App Store Connect, you need to use the latest Release Candidates (RC) for SDKs and Xcode to submit the app. For details on currently supported SDKs and versions of Xcode, visit: https://developer.apple.com/news/releases.
All of our Xcode Cloud workflows are configured to use the 'Latest Release' of Xcode and macOS (Currently Xcode 15.3 Release Candidate (15E5202a)), so I'm unsure why we are getting the above error.
Invalid Bundle (SPM)?
Some other errors that have just started to pop up are related to our Swift Package dependencies. We use Xcode's in-IDE interface for managing package dependencies (no custom Package.swift file). Here's some of the error messages we've seen:
Invalid Bundle. The bundle {MyAppName}.app/Frameworks/{FrameworkName}.framework does not support the minimum OS Version specified in the Info.plist.
Invalid MinimumOSVersion. Apps that only support 64-bit devices must specify a deployment target of 8.0 or later. MinimumOSVersion in '{MyAppName}.app/Frameworks/{FrameworkName}.framework' is ''.
Missing Info.plist value. A value for the key 'MinimumOSVersion' in bundle {MyAppName}.app/Frameworks/{FrameworkName}.framework is required.
The bundle 'Payload/{MyAppName}.app/Frameworks/{FrameworkName}.framework' is missing plist key. The Info.plist file is missing the required key: CFBundleShortVersionString. Please find more information about CFBundleShortVersionString at https://developer.apple.com/documentation/bundleresources/information_property_list/cfbundleshortversionstring
I am not sure what to make of these errors, as we have not made any changes to minimum deployment version of any of our project's targets. These errors seemed to start happening out of nowhere, sometime between last Friday and yesterday.
Any help would be very appreciated!!
Post not yet marked as solved
If you have configured your workflows to use 'Latest Release', and there's a Release Candidate available, Xcode Cloud decides to use it.
The problem is that the App Store rejects builds submitted with Release Candidate builds, at least that's what I'm encountering with Xcode 15.3 on the 27th of February, 2024:
This is the error:
Unsupported SDK or Xcode version. Your app was built with an SDK or version of Xcode that isn’t supported. Although you can use beta versions of SDKs and Xcode to build and upload apps to App Store Connect, you need to use the latest Release Candidates (RC) for SDKs and Xcode to submit the app. For details on currently supported SDKs and versions of Xcode, visit: https://developer.apple.com/news/releases.
I'm not really sure if the issue is on Xcode Cloud or on the App Store, but something's up and they don't like each other right now!
Post not yet marked as solved
Hello!
Since Xcode 15 came out, I've been having this issue with UI tests where the test runner hangs for 60s when the keyboard is presented.
In the test logs I get this kind of messages:
00:07.588 Wait for com.example.app to idle
01:07.642 App event loop idle notification not received, will attempt to continue.
Interestingly, this only appears to be happening in CI environments (I've tried Xcode cloud and Circle CI). It works fine on my local machine.
Everything is fine with Xcode 14, but I can't keep my CI environment stuck on Xcode 14 forever.
I've tried disabling animations using UIView.setAnimationsEnabled(false), but it did not fix the problem.
Here are the full logs of what it takes to fill out a text field: logs.txt
Post not yet marked as solved
Hi ,
'MobileRTCScreenShare/MobileRTCScreenShareService.h' file not found during xcode cloud build , but when i run on local its working fine , please suggest the right way to solve the problem
Post not yet marked as solved
We added a unit test workflow to Xcode Cloud and the step to generate the test report takes a whopping 20 minutes. We have a few thousand tests but the entire run was 28 minutes—is this expected? Locally, running the test suite (on m1) runs in about 2 minutes.
Hello!
I'd love to be able to use Xcode Cloud, but I can't figure out how to make it fast enough.
For example a build (from clean) that takes 30s on my M1 MacBook Pro takes 120s on Xcode Cloud.
I looked at the build timelines for both local builds and cloud builds, and there is no apparent bottleneck on the cloud build. It appears to be compiling 10 to 12 files in parallel just like my local machine, just 4x slower.
I'm on the free tier right now. Is it faster on the paid tiers?
Post not yet marked as solved
I have a crash in my app that occurs during a test - but only when running on Xcode Cloud - locally tests always pass fine. I have a crash report that looks like the one below.
I understand that abort is being called and includes an abort_message which I could normally see in the console if the debugger was attached, but as this is Xcode Cloud, is there any way where I can actually see this abort message?
Exception Type: EXC_CRASH (SIGABRT)
Exception Codes: 0x0000000000000000, 0x0000000000000000
Termination Reason: SIGNAL 6 Abort trap: 6
Triggered by Thread: 0
Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
0 libsystem_kernel.dylib 0x10cb497a2 __pthread_kill + 10
1 libsystem_pthread.dylib 0x10cad4f30 pthread_kill + 262
2 libsystem_c.dylib 0x7ff80014cd30 abort + 133
3 libc++abi.dylib 0x7ff8002961b2 abort_message + 241
4 libc++abi.dylib 0x7ff80028838a demangling_terminate_handler() + 266
5 libobjc.A.dylib 0x7ff80004266e _objc_terminate() + 104
6 libc++abi.dylib 0x7ff80029560b std::__terminate(void (*)()) + 6
7 libc++abi.dylib 0x7ff800298024 __cxa_rethrow + 100
8 libobjc.A.dylib 0x7ff800063a71 objc_exception_rethrow + 37
9 CoreFoundation 0x7ff8003f1a32 CFRunLoopRunSpecific + 738
10 GraphicsServices 0x7ff80fe9d08f GSEventRunModal + 137
11 UIKitCore 0x7ff805bbb53d -[UIApplication _run] + 972
12 UIKitCore 0x7ff805bbffab UIApplicationMain + 123
13 SwiftUI 0x7ff84ab8aeda 0x7ff849b47000 + 17055450
14 SwiftUI 0x7ff84ab8ad93 0x7ff849b47000 + 17055123
15 SwiftUI 0x7ff84a82b0d7 0x7ff849b47000 + 13517015
Post not yet marked as solved
here is my post clone scrip:
#!/bin/zsh
brew install swift-format
And here is the errors im getting in the Xcode Cloud logs:
Showing All Messages
cd /Volumes/workspace/repository/ci_scripts && /bin/zsh /Volumes/workspace/repository/ci_scripts/ci_post_clone.sh
==> Downloading https://ghcr.io/v2/homebrew/portable-ruby/portable-ruby/blobs/sha256:02180ca8b8295422ae84921bcf034b7ee8ce5575488bd5e6a37a192e53cd5d34
#=#=#
##O#-#
### 5.5%
##################################################### 74.3%
######################################################################## 100.0%
==> Pouring portable-ruby-3.1.4.el_capitan.bottle.tar.gz
Running `brew update --auto-update`...
To restore the stashed changes to /Users/local/Homebrew, run:
cd /Users/local/Homebrew && git stash pop
==> Homebrew collects anonymous analytics.
Read the analytics documentation (and how to opt-out) here:
https://docs.brew.sh/Analytics
No analytics have been recorded yet (nor will be during this `brew` run).
==> Homebrew is run entirely by unpaid volunteers. Please consider donating:
https://github.com/Homebrew/brew#donations
Error: swift-format: the bottle needs the Apple Command Line Tools to be installed.
You can install them, if desired, with:
xcode-select --install
If you're feeling brave, you can try to install from source with:
brew install --build-from-source swift-format
It is expected behaviour that most formulae will fail to build from source.
It is expected behaviour that Homebrew will be buggy and slow when building from source.
Do not create any issues about failures building from source on Homebrew's GitHub repositories.
Do not create any issues building from source even if you think this message is unrelated.
Any opened issues will be immediately closed without response.
Do not ask for help from Homebrew or its maintainers on social media.
You may ask for help building from source in Homebrew's discussions but are unlikely to receive a response.
If building from source fails, try to figure out the problem yourself and submit a fix as a pull request.
We will review it but may or may not accept it.
Run command: 'cd /Volumes/workspace/repository/ci_scripts && /bin/zsh /Volumes/workspace/repository/ci_scripts/ci_post_clone.sh'
==> Downloading https://ghcr.io/v2/homebrew/portable-ruby/portable-ruby/blobs/sha256:02180ca8b8295422ae84921bcf034b7ee8ce5575488bd5e6a37a192e53cd5d34
#=#=#
##O#-#
### 5.5%
##################################################### 74.3%
######################################################################## 100.0%
==> Pouring portable-ruby-3.1.4.el_capitan.bottle.tar.gz
Running `brew update --auto-update`...
To restore the stashed changes to /Users/local/Homebrew, run:
cd /Users/local/Homebrew && git stash pop
==> Homebrew collects anonymous analytics.
Read the analytics documentation (and how to opt-out) here:
https://docs.brew.sh/Analytics
No analytics have been recorded yet (nor will be during this `brew` run).
==> Homebrew is run entirely by unpaid volunteers. Please consider donating:
https://github.com/Homebrew/brew#donations
Error: swift-format: the bottle needs the Apple Command Line Tools to be installed.
You can install them, if desired, with:
xcode-select --install
If you're feeling brave, you can try to install from source with:
brew install --build-from-source swift-format
It is expected behaviour that most formulae will fail to build from source.
It is expected behaviour that Homebrew will be buggy and slow when building from source.
Do not create any issues about failures building from source on Homebrew's GitHub repositories.
Do not create any issues building from source even if you think this message is unrelated.
Any opened issues will be immediately closed without response.
Do not ask for help from Homebrew or its maintainers on social media.
You may ask for help building from source in Homebrew's discussions but are unlikely to receive a response.
If building from source fails, try to figure out the problem yourself and submit a fix as a pull request.
We will review it but may or may not accept it.
Command exited with non-zero exit-code: 1
The ci_post_clone.sh is not executable and was run using zsh (default shell on macOS). To make sure your script runs correctly, make the file executable using `chmod +x` and add an appropriate shebang line.
I feel like Xcode Cloud can't possibly be missing Xcode command line tools. I also can't imagine they forgot to run chmod +x on the default run script files
Any Ideas here?
Post not yet marked as solved
Hi!
I was able to setup Xcode Cloud and build manually without problems. Also, GitHub integration with Xcode works, I can commit and push changes to my GitHub repo.
Unfortunately, I am not able to trigger a Xcode Cloud build by pushing changes to my repo. Tried git push via Xcode 15.2 and via command line. The push itself always works.
I was under the impression this should "just work", if the workflow includes a start condition set to Branch Changes, Any Branch, no custom conditions. I have one single branch.
Fails silently, no visible activity, neither in Xcode nor in the App Connect portal.
Any ideas? Am I missing something?
Best regards
Post not yet marked as solved
Yet another issue with Xcode Cloud which never happened before. I am losing my hope on Xcode Cloud and looking to change my CI options, since we are stumbling upon unexpected issues for the second time during last two weeks.
This time, it is even worse. I can't start building from any workflow. Whenever I try to do so, just an alert pops up saying "This operation could not be completed". Build process doesn't even start, it doesn't even try to clone my repo, it just fails. Anyone faced such an issue before? How were you able to fix it?
Post not yet marked as solved
Suddenly, Xcode Cloud can not show any Git related info when trying to run any build.
The repo is still connected because I still can select branch when configuring workflow.