-
Notifications
You must be signed in to change notification settings - Fork 3
Add XCFramework build infrastructure and CI #401
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
base: trunk
Are you sure you want to change the base?
Changes from all commits
b71df93
3f35154
f27b6bb
919f5fd
dae10df
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -67,6 +67,35 @@ steps: | |
| make test-swift-package | ||
| plugins: *plugins | ||
|
|
||
| - label: ':xcode: Build XCFramework' | ||
| key: build-xcframework | ||
| depends_on: build-react | ||
| command: | | ||
| buildkite-agent artifact download dist.tar.gz . | ||
| tar -xzf dist.tar.gz | ||
| install_gems | ||
| bundle exec fastlane set_up_signing_release | ||
| make build-resources-xcframework | ||
| bundle exec fastlane xcframework_sign | ||
| ./package_xcframework.sh | ||
| artifact_paths: | ||
| - '*.xcframework.zip' | ||
| - '*.xcframework.zip.checksum.txt' | ||
| plugins: *plugins | ||
|
|
||
| - label: ':s3: Publish XCFramework to S3' | ||
| # Eventually, we might want to gate this based on an env var | ||
| # to be set by the process that starts the pipeline | ||
| # | ||
| # if: build.env("NEW_VERSION") != null | ||
| depends_on: build-xcframework | ||
| command: | | ||
| buildkite-agent artifact download '*.xcframework.zip' . | ||
| buildkite-agent artifact download '*.xcframework.zip.checksum.txt' . | ||
| install_gems | ||
| bundle exec fastlane publish_to_s3 version:${NEW_VERSION:-$BUILDKITE_COMMIT} | ||
|
Contributor
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Android publishes every version but does not have the issue of having to update Given storage is cheap, it might be okay for us to publish the XCFramework on every build, too, just to continue exercising the infra and avoid surprises at release time. Or, we could be frugal and only publish when we need. I'm leaning toward publishing one every build, though. Faster feedback. And we could add additional automation to easily push a commit with updated |
||
| plugins: *plugins | ||
|
|
||
| - label: ':ios: Test iOS E2E' | ||
| depends_on: build-react | ||
| command: | | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,6 @@ | ||
| # frozen_string_literal: true | ||
|
|
||
| source 'https://rubygems.org' | ||
|
|
||
| gem 'fastlane', '~> 2.230' | ||
| gem 'fastlane-plugin-wpmreleasetoolkit', '~> 13.8' |
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 admit this is quite confusing with a mash of Fastlane, make, and scripts. I'll tidy up in a follow up, my preference being to use make as the single entry point.
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.
https://linear.app/a8c/issue/AINFRA-1983/followup-gutenbergkitresources-setup-move-script-away-from-root