Five days ago everything was working as intended. Nothing has been changed on Workflows. All of a sudden, new builds are failing. The issue is with these two tasks during the Archiving:
Export archive for ad-hoc distribution
Export archive for app-store distribution
I downloaded the Artifacts and checked the logs. If we look at the IDEDistribution.verbose.log then we see the following errors:
"Error Domain=IDEProfileLocatorErrorDomain Code=1 \"No profiles for 'uz.uzum.avto' were found\" UserInfo={IDEDistributionIssueSeverity=3, NSLocalizedDescription=No profiles for 'uz.uzum.avto' were found, NSLocalizedRecoverySuggestion=Xcode couldn't find any iOS App Store provisioning profiles matching 'uz.uzum.avto'.}",
"Error Domain=DeveloperAPIServiceErrorDomain Code=5 \"There is a problem with the request entity\" UserInfo={IDEDistributionIssueSeverity=3, NSLocalizedDescription=There is a problem with the request entity, NSLocalizedRecoverySuggestion=You already have a current Distribution Managed certificate or a pending certificate request.}",
"Error Domain=IDECodesignResolverErrorDomain Code=1 \"No signing certificate \"iOS Distribution\" found\" UserInfo={IDEDistributionIssueSeverity=3, NSLocalizedRecoverySuggestion=No \"iOS Distribution\" signing certificate matching team ID \"x\" with a private key was found., IDEProvisioningError_UserInfoKey_IDEProvisioningErrorSpecifier=iOS Distribution, NSLocalizedDescription=No signing certificate \"iOS Distribution\" found, IDEProvisioningError_UserInfoKey_IDEProvisioningErrorPlatform=com.apple.platform.iphoneos, IDEProvisioningError_UserInfoKey_IDEProvisioningErrorAction=5, IDEProvisioningError_UserInfoKey_IDEProvisioningErrorTeam=<IDEProvisioningBasicTeam: 0x600001866280; teamID='x', teamName='(null)'>}"
)}
Issues seems to be related to certificates and etc. However, I checked the member center, and everything is fine with the certificates and profiles. Moreover, I can build, archive and distribute from my local machine with no issues at all.
One particular thing that got my interest is the following: I opened the IDEDistribution.critical.log file, and saw the following issue:
It seems Xcode Cloud is having a hard time to connect to App Store Connect. Please, help me to resolve the issue. I tried to change the Environment, to add new provisioning profile, but nothing works.
FYI:
I tried different environments to build, but the latest was:
Xcode 15.0.1
macOS: Ventura 13.6.3
platform: iOS
Deployment Preparation: Testflight (Internal Testing Only)
Xcode Cloud
RSS for tagAutomate workflows to test, analyze, build, and distribute your app, and integrate them with other developer tools, such as TestFlight and App Store Connect.
Post
Replies
Boosts
Views
Activity
Since this morning, visionOS builds in XCode Cloud are failing.
Did change anything in my configuration, the error on XCode cloud looks like visionOS is not installed:
{ platform:visionOS, id:dvtdevice-DVTiOSDevicePlaceholder-xros:placeholder, name:Any visionOS Device, error:visionOS is not installed. To use with Xcode, first download and install the platform }
I attached a screenshot from the logs.
Anyone know what is happening here and how to fix?
Thanks,
Patrick
I am doing brew install awscli with my ci_post_clone.sh. When doing so, I get the following error and awscli can no longer be installed.
I remember that this error did not occur at the time of macOS Ventura 13.6.3, xcode 14.3.1 and only occurred after upgrading to macOS Sonoma 14, xcode 15.0.1, but I am now getting the same error after reverting back to macOS Ventura 13.6.3, xcode 14.3.1.
Error: python@3.11: the bottle needs the Apple Command Line Tools to be installed.
You can install them, if desired, with: xcode-select --install
xcode-select --install
If you're feeling brave, you can try to install from source with: brew install --build-from
brew install --build-from-source python@3.11
I know that awscli depends on python 3.11, but I don't think it's an awscli problem because I was using awscli before the error appeared and was able to use it without any problems.
I am wondering why the error suddenly appeared and whether the response to put brew install --build-from-source python@3.11 is correct. Thank you in advance for your response.
I think it would be beneficial for those of us distributing outside the Mac App Store to be able to run a custom script after the notarization post-action on Xcode Cloud, to upload the notarized binary to something like S3. Will this workflow be considered or implemented in the future? Right now, it's only possible to run a custom script post-build rather than post-notarization.
Xcode Cloud build on Xcode 14.3.1 and MacOS Ventura 13.5.2 worked on 1/26/2024 and is failing this week (1/29/2024 ->) for multiple React Native apps.
This happens in branches that have not changed since the last successful build.
Local builds and 'pod install's continue to work.
Any help is appreciated.
ci_post_clone.sh
################## Set Up Environment ##################################
export HOMEBREW_NO_INSTALL_CLEANUP=TRUE
brew install cocoapods
# have to add node yourself
brew install node@16
# link it to the path
brew link node@16
# local npm/jfrog auth method
...
# move to the project directory
cd ..
npm ci
# Install dependencies you manage with CocoaPods.
cd ios
pod install
Run ci_post_clone.sh script
...
Installing boost (1.76.0)
Installing fmt (6.2.1)
Installing glog (0.3.5)
Installing hermes-engine (0.71.11)
[!] Error installing hermes-engine
――― MARKDOWN TEMPLATE ―――――――――――――――――――――――――――――――――――――――――――――――――――――――――――
Command
/usr/local/Cellar/cocoapods/1.15.0/libexec/bin/pod install
Report
What did you do?
What did you expect to happen?
What happened instead?
Stack
CocoaPods : 1.15.0
Ruby : ruby 3.3.0 (2023-12-25 revision 5124f9ac75) [x86_64-darwin22]
RubyGems : 3.5.4
Host : macOS 13.5.2 (22G91)
Xcode : 14.3.1 (14E300c)
Git : git version 2.39.2 (Apple Git-143)
Ruby lib dir : /usr/local/Cellar/ruby/3.3.0/lib
Repositories : trunk - CDN - https://cdn.cocoapods.org/
Plugins
cocoapods-deintegrate : 1.0.5
cocoapods-plugins : 1.0.0
cocoapods-search : 1.0.1
cocoapods-trunk : 1.6.0
cocoapods-try : 1.2.0
Podfile
require File.join(File.dirname(`node --print "require.resolve('expo/package.json')"`), "scripts/autolinking")
require_relative '../node_modules/react-native/scripts/react_native_pods'
require_relative '../node_modules/@react-native-community/cli-platform-ios/native_modules'
platform :ios, '13.0'
prepare_react_native_project!
# If you are using a `react-native-flipper` your iOS build will fail when `NO_FLIPPER=1` is set.
# because `react-native-flipper` depends on (FlipperKit,...) that will be excluded
#
# To fix this you can also exclude `react-native-flipper` using a `react-native.config.js`
# ```js
# module.exports = {
# dependencies: {
# ...(process.env.NO_FLIPPER ? { 'react-native-flipper': { platforms: { ios: null } } } : {}),
# ```
flipper_config = ENV['NO_FLIPPER'] == "1" ? FlipperConfiguration.disabled : FlipperConfiguration.enabled
linkage = ENV['USE_FRAMEWORKS']
if linkage != nil
Pod::UI.puts "Configuring Pod with #{linkage}ally linked Frameworks".green
use_frameworks! :linkage => linkage.to_sym
end
target 'UI Kit App' do
# Required by Expo modules
use_expo_modules!
post_integrate do |installer|
begin
expo_patch_react_imports!(installer)
rescue => e
Pod::UI.warn e
end
end
config = use_native_modules!
# Flags change depending on the env values.
flags = get_default_flags()
use_react_native!(
:path => config[:reactNativePath],
# Hermes is now enabled by default. Disable by setting this flag to false.
# Upcoming versions of React Native may rely on get_default_flags(), but
# we make it explicit here to aid in the React Native upgrade process.
#:hermes_enabled => flags[:hermes_enabled],
:hermes_enabled => true,
:fabric_enabled => flags[:fabric_enabled],
# Enables Flipper.
#
# Note that if you have use_frameworks! enabled, Flipper will not work and
# you should disable the next line.
:flipper_configuration => flipper_config,
# An absolute path to your application root.
:app_path => "#{Pod::Config.instance.installation_root}/.."
)
post_install do |installer|
react_native_post_install(
installer,
# Set `mac_catalyst_enabled` to `true` in order to apply patches
# necessary for Mac Catalyst builds
:mac_catalyst_enabled => false
)
__apply_Xcode_12_5_M1_post_install_workaround(installer)
end
end
Error
Errno::EEXIST - File exists @ syserr_fail2_in - /Users/local/Library/Caches/CocoaPods/Pods/External/hermes-engine/fb17fa7201e9c4777a414e0d9d28892e-34c86/destroot/Library/Frameworks/universal/hermes.xcframework/ios-arm64_x86_64-maccatalyst/hermes.framework/Resources
/usr/local/Cellar/ruby/3.3.0/lib/ruby/3.3.0/fileutils.rb:2254:in `symlink'
/usr/local/Cellar/ruby/3.3.0/lib/ruby/3.3.0/fileutils.rb:2254:in `copy'
/usr/local/Cellar/ruby/3.3.0/lib/ruby/3.3.0/fileutils.rb:1048:in `block in copy_entry'
/usr/local/Cellar/ruby/3.3.0/lib/ruby/3.3.0/fileutils.rb:2385:in `wrap_traverse'
/usr/local/Cellar/ruby/3.3.0/lib/ruby/3.3.0/fileutils.rb:2388:in `block in wrap_traverse'
/usr/local/Cellar/ruby/3.3.0/lib/ruby/3.3.0/fileutils.rb:2387:in `each'
/usr/local/Cellar/ruby/3.3.0/lib/ruby/3.3.0/fileutils.rb:2387:in `wrap_traverse'
/usr/local/Cellar/ruby/3.3.0/lib/ruby/3.3.0/fileutils.rb:1045:in `copy_entry'
/usr/local/Cellar/ruby/3.3.0/lib/ruby/3.3.0/fileutils.rb:990:in `block in cp_r'
/usr/local/Cellar/ruby/3.3.0/lib/ruby/3.3.0/fileutils.rb:2469:in `block in fu_each_src_dest'
/usr/local/Cellar/ruby/3.3.0/lib/ruby/3.3.0/fileutils.rb:2478:in `block in fu_each_src_dest0'
/usr/local/Cellar/ruby/3.3.0/lib/ruby/3.3.0/fileutils.rb:2476:in `each'
/usr/local/Cellar/ruby/3.3.0/lib/ruby/3.3.0/fileutils.rb:2476:in `fu_each_src_dest0'
/usr/local/Cellar/ruby/3.3.0/lib/ruby/3.3.0/fileutils.rb:2467:in `fu_each_src_dest'
/usr/local/Cellar/ruby/3.3.0/lib/ruby/3.3.0/fileutils.rb:989:in `cp_r'
/usr/local/Cellar/cocoapods/1.15.0/libexec/gems/cocoapods-1.15.0/lib/cocoapods/downloader/cache.rb:343:in `block (2 levels) in copy_files'
...
/usr/local/Cellar/cocoapods/1.15.0/libexec/bin/pod:25:in `load'
/usr/local/Cellar/cocoapods/1.15.0/libexec/bin/pod:25:in `<main>'
――― TEMPLATE END ――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――
[!] Oh no, an error occurred.
Search for existing GitHub issues similar to yours:
https://github.com/CocoaPods/CocoaPods/search?q=File+exists+%40+syserr_fail2_in+-+%2FUsers%2Flocal%2FLibrary%2FCaches%2FCocoaPods%2FPods%2FExternal%2Fhermes-engine%2Ffb17fa7201e9c4777a414e0d9d28892e-34c86%2Fdestroot%2FLibrary%2FFrameworks%2Funiversal%2Fhermes.xcframework%2Fios-arm64_x86_64-maccatalyst%2Fhermes.framework%2FResources&type=Issues
If none exists, create a ticket, with the template displayed above, on:
https://github.com/CocoaPods/CocoaPods/issues/new
Be sure to first read the contributing guide for details on how to properly submit a ticket:
https://github.com/CocoaPods/CocoaPods/blob/master/CONTRIBUTING.md
Don't forget to anonymize any private data!
Looking for related issues on cocoapods/cocoapods...
Found no similar issues. To create a new issue, please visit:
https://github.com/cocoapods/cocoapods/issues/new
I've recently being getting an intermittent issue on my builds. My post-clone script calls yarn install to set up dependencies for the app. Occasionally it will fail at this step fetching packages, on what I'm assuming is the package stored in a private gitlab repository for the company.
The repository is accessible over the internet for ssh, and uses ssh keys for authentication. I install the private key at the start of the script, it's stored as an environment variable in the workflow configuration. Here's what the error looks like, note that the cert altnames are different every time:
[2/4] Fetching packages...
error Error [ERR_TLS_CERT_ALTNAME_INVALID]: Hostname/IP does not match certificate's altnames: Host: <private-repo.com>. is not in the cert's altnames: DNS:*.outsystemsenterprise.com, DNS:outsystemsenterprise.com
at new NodeError (node:internal/errors:387:5)
at Object.checkServerIdentity (node:tls:354:12)
at TLSSocket.onConnectSecure (node:_tls_wrap:1549:27)
at TLSSocket.emit (node:events:513:28)
at TLSSocket._finishInit (node:_tls_wrap:953:8)
at TLSWrap.ssl.onhandshakedone (node:_tls_wrap:734:12)
We have multiple dev teams (let's say 10) and we would like to create a workflow for them to archive a build and push it out to their respective TestFlight team without letting them modify the workflow. Is this possible? Or would we have to create 10 nearly identical workflows, with the only difference being the Post-Action TestFlight group?
In GitHub Actions, for example, some actions triggered manually allow you to pass in variables to your workflow when you kick them off.
Xcode Cloud succeeds in building the Release configuration of the app, but whenever deployment preparation is set to "TestFlight and App Store" the last step fails with:
ITMS-90035: Invalid Signature. Code failed to satisfy specified code requirement(s). The file at path “{AppName}.app/{AppName}” is not properly signed. Make sure you have signed your application with a distribution certificate, not an ad hoc certificate or a development certificate. Verify that the code signing settings in Xcode are correct at the target level (which override any values at the project level). Additionally, make sure the bundle you are uploading was built using a Release target in Xcode, not a Simulator target. If you are certain your code signing settings are correct, choose “Clean All” in Xcode, delete the “build” directory in the Finder, and rebuild your release target. For more information, please consult https://developer.apple.com/support/code-signing.
When I build for release (with manual signing) everything works as expected and uploading to TestFlight for external testing works.
I have tried to removed every imported framework, library, file etc. only keeping the bare minimum and still Xcode Cloud fails with the same error. I even created a new empty project but I still get the same error. My only guess is that something is off with the automatically generated certificates (or provisioning profiles) that Apple creates.
Is there any way to figure out what specifically makes the signing fail?
Is there a way to reset Xcode Cloud to clear all data and caches, revoke all certificates and remove all accosiated provisioning profiles?
I'm investigating converting our pipeline that uses Gitlab runners and Fastlane to XCode Cloud.
I think I got the basic workflow set up ok, but the problem comes in when trying to archive to a different version - we generally have the next release in our develop branch, the following release in a delta branch and/or feature branches, and sometimes switch to a far-future version to test things when we don't want a build on the current release to confuse our testing team.
With our current setup, we have a Fastlane lane that checks the version in our project, checks the latest build number for that version, and increments it, like so:
lane:checkAndIncrementBuildNumber do
# Increment the build number
localProjectVersion = get_version_number_from_plist(
xcodeproj: PROJECT_NAME,
target: TARGET_NAME,
build_configuration_name: BUILD_CONFIGURATION,
plist_build_setting_support: true)
current_build_number = latest_testflight_build_number(api_key_path: API_KEY_PATH,version: localProjectVersion)
increment_build_number(
build_number: current_build_number + 1
)
incrementedBuildNumber = get_info_plist_value(path: INFO_PLIST_PATH, key: "CFBundleVersion")
File.write(VERSION_NUMBER_FILE_NAME, localProjectVersion)
File.write(BUILD_NUMBER_FILE_NAME, incrementedBuildNumber)
File.write(VERSION_BUILD_FILE_NAME, localProjectVersion + " (#{incrementedBuildNumber})")
File.write(IPA_FILE_NAME_FILE, IPA_FILE_NAME_START + localProjectVersion.tr(".","") + "b" + incrementedBuildNumber + ".ipa")
end
Can I just call this lane or something like it in the ci_pre_xcodebuild script? Or is there a way to replicate this functionality without having to set up new workflows every time we switch releases?
Getting these errors for most (but not all) builds:
ERROR: Could not find a valid gem 'drb' (= 2.0.6), here is why:
Unable to download data from https://rubygems.org/ - Errno::ECONNRESET: Failed to open TCP connection to rubygems.org:443 (Connection reset by peer - connect(2) for "rubygems.org" port 443) (https://rubygems.org/specs.4.8.gz)
ERROR: Could not find a valid gem 'activesupport' (= 6.1.7.6), here is why:
Unable to download data from https://rubygems.org/ - Errno::ECONNRESET: Failed to open TCP connection to rubygems.org:443 (Connection reset by peer - connect(2) for "rubygems.org" port 443) (https://rubygems.org/specs.4.8.gz)
ERROR: Could not find a valid gem 'cocoapods' (= 1.14.3), here is why:
Unable to download data from https://rubygems.org/ - Errno::ECONNRESET: Failed to open TCP connection to rubygems.org:443 (Connection reset by peer - connect(2) for "rubygems.org" port 443) (https://rubygems.org/specs.4.8.gz)
from this code in ci_post_clone.sh:
gem install drb -v2.0.6
gem install activesupport -v6.1.7.6
gem install cocoapods -v1.14.3
Xcode environment:
XCODE VERSION: Xcode 15.2 (15C500b)
MACOS VERSION: macOS Sonoma 14.3.1 (23D60)
Any help would be greatly appreciated!
After following the guides, I have Xcode Cloud hooked up to my Gitlab and it's all working nicely. However I want to also have the build artefacts stored on Gitlab also. I know it will involve a ci_post_xcodebuild.sh script but I can't find any information on what I actually need to do. I don't want to be manually downloading them for every release!
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.
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?
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?
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
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?
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.
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
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.
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.