New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
RCOCOA-2308: Add GHA workflow for core prebuilds #8517
Conversation
.github/workflows/build-binaries.yml
Outdated
type: string | ||
required: false | ||
default: '' | ||
description: Core version (tag/ref) to use to generate the binaries for. If not provided, the version in dependencies.list will be used |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
(tag/ref) implies that you can build things other than tagged versions with this but I'm pretty sure doing so will fail as REALM_VERSION
needs to be something that can be parsed as a version. To support that it'd need to do something along the lines of checking out the supplied branch but using the result of git describe
as the version everywhere else.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I've clarified this now. This should either be a tag or the output of git describe
. It doesn't appear like we can do actual releases with a git describe
-d version, but we can still create prebuilds and use them during development if we wanted to run a CI build on all platforms from an untagged version of Core.
with: | ||
repository: realm/realm-core | ||
path: core | ||
submodules: recursive |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We shouldn't need core's submodules
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Those are needed to build the core binaries, aren't they? Otherwise, I get errors like this one when running build-apple-device.sh
:
CMake Error at external/CMakeLists.txt:4 (add_subdirectory):
The source directory
/Users/runner/work/realm-swift/realm-swift/core/external/catch
does not contain a CMakeLists.txt file.
* master: RCOCOA-2305: Update base url to point to services.cloud.mongodb.com (#8537) Update docs URL (#8538) RCOCOA-2310: Fix a crash when receiving 401/403 when opening a watch stream (#8536) Add core version to build-binaries workflow (#8525) Add an empty changelog section Upgrade to core 14.4.1 (#8526) Release v10.49.0 Upgrade to core 14 (#8496) RCOCOA-2308: Add GHA workflow for core prebuilds (#8517) Release 10.48.1 Add NSPrivacyAccessedAPICategoryDiskSpace to the privacy manifest (#8511) 🔄 Synced file(s) with realm/ci-actions (#8520) Add build-binaries workflow (#8515) Only commit the changelog in the add empty changelog release step (#8505) Release 10.48.0 Introduce `_customRealmProperties()` to all Realm Objects to allow for client-generated RLMProperties (via Swift Macros) (#8490) Update packaging for Xcode 15.3 (#8502) # Conflicts: # Realm/RLMAsyncTask.mm # Realm/RLMSyncSession.mm
Successful run: https://github.com/realm/realm-swift/actions/runs/8269909586 (the url in the combine xcframework step has a typo, but that's fixed already).
This created prebuilds for Core v13.27.0 which can be found at https://static.realm.io/downloads/core/v13.27.0/cocoa/realm-monorepo-xcframework-v13.27.0.tar.xz.
Fixes #8516