Xcode Cloud

RSS for tag

Automate workflows to test, analyze, build, and distribute your app, and integrate them with other developer tools, such as TestFlight and App Store Connect.

Xcode Cloud Documentation

Post

Replies

Boosts

Views

Activity

Timeout Issues with Async Polling in Xcode Cloud
Hi, Our team uses Xcode Cloud to run unit tests, and since around November, we’ve been frequently experiencing timeouts with the following type of process: @Test func hogeTest() async { // do something hoge.do() // wait until done await wait(condition: { hoge.isDone }) // test result #expect(hoge.isSucceeded) } private func wait(condition: () async -> Bool, timeout: TimeInterval = 0.5, pollingInterval: TimeInterval = 0.01) async throws { let deadline = Date().addingTimeInterval(timeout) while Date() < deadline { if await condition() { return } try await Task.sleep(nanoseconds: UInt64(round(pollingInterval * TimeInterval(NSEC_PER_SEC)))) } Issue.record("timeout") } Although sleep is supposed to wait for only a few milliseconds, there are cases where it takes more than 10 seconds, leading to a timeout. What could be causing this instability in the sleep duration? Additionally, if there are other recommended ways to implement polling and waiting in Swift Testing, I would appreciate it if you could share them. A feedback report (FB15899163) has already been submitted. Best regards,
2
0
53
22h
Unable to download artifacts from Xcode Cloud
I just discovered that I can no longer download any artifacts from Xcode Cloud, whether from newly built workflows or previous ones. When I try to download in Xcode, it crashes immediately. When downloading from App Store Connect, it redirects to an HTML page with the following content. {"message":"You are not authorized to access this team’s resources."} I've already tried re-logging into my Apple account. Is anyone else experiencing the same issue?
4
3
179
3d
Why is Toggle's value not changed in Xcode cloud?
In the code below, the check for the toggle value passed in my xcode. However, it failed in cloud, i.e., that value was still "0" after being tapped. func testToggle() throws { let app = XCUIApplication() app.launch() let fieldName = "MyToggle" let field = app.switches[fieldName] XCTAssertTrue(field.exists, "Field '\(fieldName)' should exist|debug = \(app.debugDescription)") let firstMatch = field.switches.firstMatch firstMatch.tap() #if FAILED_XCODE_CLOUD // Verify the toggle/switch is in the desired state XCTAssertEqual(firstMatch.value as? String, "1", "Field '\(fieldName)' should be ON|debug = \(app.debugDescription)") // "1" is On, "0" is Off #endif } In addition, I'd also like to ask why a traverse to firstMatch is needed?
0
0
53
1w
how to build pkg file with xcode cloud that is notarized and also has postinstall file?
I am creating a macOS app with the following requirements: Automatic Startup: After initial installation, the app should automatically start, even after the OS restarts. Notarized Installation: The installation package (.pkg) should be notarized to avoid user have to make security exception. In my current setup I’ve created a script, ci_scripts/ci_post_xcodebuild.sh, which uploads the package file $CI_APP_STORE_SIGNED_APP_PATH/<appName>.pkg to GitHub via Xcode Cloud. While I can successfully download the app, I’m encountering two main issues: Notarization (I assume): I’m unsure how to get Xcode Cloud to notarize the .pkg file. Currently, upon opening the .pkg file for the first time, users have to go to System Settings > Privacy & Security to allow an exception for the package, after which installation proceeds successfully on second try. I’d like to automate the notarization process to eliminate this extra step. Adding Additional Files to PKG installer: My current .pkg file only includes the app binary. I need to configure Xcode Cloud to include a postinstall script and a launchd daemon configuration file within the package. This would ensure that necessary files are set up on installation and that the app is properly registered as a launch daemon.
0
0
119
1w
Xcode Cloud workflows are not being started (Pull Request Changes)
Any Xcode Cloud workflow with 'Pull Request Changes' as one of its start conditions has suddenly stopped working altogether. The workflow is never started. This issue seems to have begun within the last 48 hours. Removing the 'Pull Request Changes' start condition makes the workflows functional again. The test I just ran to confirm this: Created a new Xcode Cloud workflow Selected Start Conditions: 'Pull Request Changes' from/into any branch, when any files are changed Selected Test as the 'Actions' Created a pull request on my github repository The workflow was never started Added 'Branch Changes' to the Start Conditions, specifying branch-a under 'Custom Branches' Pushed to branch-a The workflow was never started Removed 'Pull Request Changes' from the Start Conditions Pushed to branch-a The workflow finally started Curious if others are having this issue? And if so, is there a timeline for when this will be resolved? I have confirmed that our Github actions are configured properly, and believe this is indeed an issue with Xcode Cloud.
3
4
257
3w
Xcode Cloud - cannot see repository
Hello, Im trying to add my project to Xcode Cloud. Not first time. Now I'm getting this error: "To create a Xcode Cloud workflow, first add a remote source code repository from BitBucket, GitHub, or GitLab." Of course this project has origin (GitHub) and I'm using it with Xcode actively. Xcode 16.0, iOS app target 17.6. Sonoma - latest. What am I doing wrong? :)
1
1
141
3w
Xcode (Cloud) vs. Playground App
Hej hej tl;dr. I have problems building a Playground App using Xcode Cloud and I created a reference repository to reproduce this. Did anyone try this before and succeeded? Maybe you have a hint about what's going wrong here. Initial Failure I followed the documentation for Building Swift packages and Swift Playgrounds app projects with Xcode Cloud and I have always run into the following error message: ❌ Code Signing Exporting for App Store Distribution failed. Please download the logs artifact for more information Check Logs “Fair game!” I thought, checked out the logs and see this error appearing twice in each of the following steps: Export archive for ad-hoc distribution Export archive for development distribution Export archive for app-store distribution 5.3 Sec. Run command: 'xcodebuild -exportArchive -archivePath /Volumes/workspace/tmp/3546d064-74fa-42d0-8b36-3623e18941be.xcarchive -exportPath /Volumes/workspace/adhocexport -exportOptionsPlist /Volumes/workspace/ci/ad-hoc-exportoptions.plist '-DVTPortalRequest.Endpoint=http://172.16.35.199:8089' -DVTProvisioningIsManaged=YES -IDEDistributionLogDirectory=/Volumes/workspace/tmp/ad-hoc-export-archive-logs -DVTSkipCertificateValidityCheck=YES -DVTServicesLogLevel=3' Error Command exited with non-zero exit-code: 70 Moving forward, I downloaded the logs artifact as suggested earlier. This is IDEDistribution.standard.log: 2024-10-27 11:15:04 +0000 [MT] Starting export with options: {"embedOnDemandResourcesAssetPacksInBundle":true,"teamID":"38R2LLP8AF","stripSwiftSymbols":true,"thinning":"<none>","iCloudContainerEnvironment":"Development","destination":"export","reformatterBundleIdentifier":"hamburg.plus.encore","uploadSymbols":true,"raiseProfileSupportOptionalToRequired":false,"buildNumber":"4","testFlightInternalTestingOnly":false,"manageAppVersionAndBuildNumber":false,"method":"ad-hoc","generateAppStoreInformation":false} This is IDEDistribution.critical.log (actually it's three times this single error, but I'll spare you the repetition): 2024-10-27 11:15:04 +0000 [MT] -[IDEDistributionMethodManager orderedDistributionMethodsForTask:archive:logAspect:]: Error = Error Domain=IDEDistributionMethodManagerErrorDomain Code=2 "Unknown Distribution Error" UserInfo={NSLocalizedDescription=Unknown Distribution Error} And this is an excerpt (of hopefully relevant details) of IDEDistribution.verbose.log (again, this happens three times, only giving the relevant data points here): … 2024-10-27 11:15:04 +0000 [MT] Rejected distribution method <IDEDistributionMethodiOSAdHoc: 0x600001590100> because it doesn't support distributing archive … 2024-10-27 11:15:04 +0000 [MT] Rejected distribution method <IDEDistributionMethodiOSAppStoreValidation: 0x6000015900f0> because it doesn't support distributing archive … 2024-10-27 11:15:04 +0000 [MT] Rejected distribution method <IDEDistributionMethodiOSAppStoreDistribution: 0x600001590120> because it doesn't support distributing archive … 2024-10-27 11:15:04 +0000 [MT] Rejected distribution method <IDEDistributionMethodiOSAdHoc: 0x600001590100> because it doesn't support distributing archive … 2024-10-27 11:15:04 +0000 [MT] Available distribution methods: {( <IDEDistributionMethodSaveBuiltProducts: 0x6000015f8060>, <IDEDistributionMethodExportArchive: 0x6000015f8070> )} Investigate Xcode Archive (*.xcarchive) At this point, I downloaded the Xcode archive from AppStoreConnect and realized that it only contained debug symbols for the app, but not the app itself. > ls -la /Users/herzi/Downloads/….xcarchive/Products total 0 drwxrwxr-x@ 2 herzi staff 64 27 Okt 12:21 . drwxrwxr-x@ 5 herzi staff 160 27 Okt 12:22 .. Notice the absence of the Applications folder that would contain the Application.app bundle. Current Status So I created a clean, sample repository for my integration. Did anyone try this before and succeeded? Maybe you have a hint about what's going wrong here.
1
0
210
3w
ci_post_clone.sh :: doesn't work on xCloud, it works on local MacOS
I'm trying to make a ci_post_clone.sh script to build an Ionic iOS app trough xCloud I've been looking trough internet, trough official apple documentation but haven't been able to solve the issue the script is working on macOS local machine but it fails again and again on xCloud enviornment I'm attaching the full script ci_post_clone.sh (swapped to .txt extension for being able to upload it) along the ci_post_clone.log ci_post_clone.log ci_post_clone.txt
2
0
185
4w
Feature Request: Socket Mode for Xcode Cloud Webhooks
Issue Description The current Xcode Cloud webhook functionality requires developers to expose a public URL to receive webhook events, which poses a challenge in environments with security restrictions or limited network accessibility. Many developers need to receive webhook events locally without exposing their servers to the public internet. Proposed Solution A feature similar to Slack’s "Socket Mode" would allow developers to receive webhook events over a WebSocket connection without exposing a public URL. This socket-based solution could offer a more secure, streamlined, and accessible way for developers to work with webhooks, especially in closed network environments.
2
3
151
2w
Xcode Cloud fails to install/launch macOS test runner
When running a SwiftUI Multiplatform app in Xcode Cloud I'm getting the following error: CIWatcher encountered an error in CIWatcherTests failed with: Failed to install or launch the test runner. (Underlying Error: Could not launch “CIWatcherTests”. Runningboard has returned error 5. Please check the system logs for the underlying cause of the error. (Underlying Error: The operation couldn’t be completed. Launch failed. (Underlying Error: Launchd job spawn failed))) This runs fine on iOS and all those tests pass. The SwiftUI app on Mac is a menu bar app so I'm not sure if this could be the issue as it's not launching for some reason on the Xcode Cloud system? Maybe I need to add some run option to make this work? When run locally both iOS and macOS pass all the tests successfully
4
5
781
Mar ’24
Unit Test Execution in Xcode Cloud Too Slow Since Xcode 16 Update
Hello Developers, I regularly use Xcode Cloud to run unit tests, but since the release of Xcode 16, the testing process has become significantly slower. I am seeking advice on how to improve the situation. [ Details ] With Xcode 15.4, unit tests took about 1 hour to complete. However, since upgrading to Xcode 16, the tests have not finished even after 2 hours. The blog post linked below also mentions significant overhead in running unit tests on Xcode Cloud, even with Xcode 15.4: https://dwango.github.io/articles/2024-07_nicoiphone_xcode_cloud/#%E3%83%86%E3%82%B9%E3%83%88%E5%AE%9F%E8%A1%8C%E6%99%82%E9%96%93%E3%81%8C%E5%A2%97%E5%8A%A0%E3%81%97%E3%81%A6%E3%81%97%E3%81%BE%E3%81%86%E5%95%8F%E9%A1%8C According to the blog, while reviewing the xcodebuild-test-without-building.log, it was observed that the time from start to finish was about 4 minutes. However, the overall “Run xcodebuild test-without-building” process took 23 minutes, with around 20 minutes of apparent idle time. It seems that the idle time has increased even further with Xcode 16, resulting in more than twice the testing time. [ Question/Request ] Is there any way to reduce the overhead when running unit tests on Xcode Cloud, especially with the increased overhead in Xcode 16? Any advice or solutions for improving the performance would be greatly appreciated. Best regards,
2
2
394
Oct ’24
XCode cloud issue
Hi, i'am using self hosted gitlab repository. Since yesterday on my xcode cloud page display "Unable to connect to repository ....Reconnect the repository to resume builds". When i click the reconnect button, it shows that xcode cloud successfully reconnected. But even after reloading the page, it still showing the same message.
1
0
179
Oct ’24
Xcode Cloud + Xcode 16.0.0 + Test Phase Always Exceeds 2 hours
My team's Xcode Cloud build started timing out when we recently upgraded to Xcode 16.0.0. Specifically, the test build phase times out due to exceeding the 2 hour limit. The Test - iOS action could not complete due to an error. The error may not occur on rebuild. Build has exceeded the maximum allotted time. Each build can run for up to 120 minutes. If a build has not yet finished at this time, all incomplete actions will be cancelled. When running Xcode 15.4.0, the test build phase completed in roughly 45 minutes. It's also important to know that our test build completes in about 15 minutes when executing on one of our in-house Mac mini build machines (Apple Silicon). So the issue seems to be with Xcode Cloud + Xcode 16.0.0 and not our project. We have been burning through Xcode Cloud hours hoping that at some point Xcode Cloud will be fixed. The status page right now is all "green": https://developer.apple.com/system-status/ Is there a known issue with Xcode Cloud + running tests? We have combed through our project's Xcode Cloud logs and artifacts, but nothing jumps out as something on our end. Also, there is a large file named "Test Products for ", but we can't download it due to crashes/ errors: The Xcode IDE UI shows this file as 1.99GB Xcode crashes when attempting to download the file. The App Store Connect UI shows this file as ~1GB (possibly just omitting precision). An error response page is returned when attempting to download. Thanks in advance for any advice/ feedback.
7
3
446
Oct ’24