Skip to content
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

[MOB-7322] automate ios sdk release with fastlane #701

Merged
merged 24 commits into from
Dec 15, 2023

Conversation

jyu115
Copy link
Collaborator

@jyu115 jyu115 commented Nov 29, 2023

🔹 Jira Ticket(s)

Description

Implemented https://fastlane.tools/ to automate iOS SDK release. Also uses a fastlane plugin create_xcframework.

Steps to release in the new process:

  1. Update CHANGELOG.md
  2. Update new version number for sdkVersion variable in IterableAPI.swift
  3. Push CHANGELOG.md and IterableAPI.swift changes to the branch
  4. Run: fastlane ios release_sdk
    It will prompt you to enter release version number (e.g. 6.5.0-beta) and output directory (e.g. build2)

That's it! When release_sdk lane is run, it will run these lanes in subsequent order:

  1. bump_release_version
  2. clean_and_lint
  3. build_xcframework
  4. tag_version
  5. pod_trunk_push

Github release created with assets uploaded:

  • automatically uploads zip files and puts the correct changelog header section notes
Screen Shot 2023-12-15 at 12 30 49 AM

Finished success status:
Screen Shot 2023-11-29 at 1 46 31 PM

See available lanes:
Screen Shot 2023-11-29 at 2 38 46 PM

@jyu115 jyu115 marked this pull request as ready for review November 29, 2023 19:40
@Ayyanchira
Copy link
Member

So from Step 1 to Step 3 will be on a separate branch -> which will be reviewed by the team.
Once the branch is merged into master, thats when we run fastlane ios release_sdk right?
Does it also take care of uploading the zip files? Or will that need to be uploaded from build folder to tags?

@jyu115
Copy link
Collaborator Author

jyu115 commented Dec 15, 2023

So from Step 1 to Step 3 will be on a separate branch -> which will be reviewed by the team. Once the branch is merged into master, thats when we run fastlane ios release_sdk right? Does it also take care of uploading the zip files? Or will that need to be uploaded from build folder to tags?

Yes I think the best process would be:

  1. Step 1 to Step 3 on a separate branch and merge to master.
  2. Run a github actions workflow -- this takes care of uploading zip files and creating a release

Copy link
Member

@Ayyanchira Ayyanchira left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM. Also the visual demo covered end to end flow which was nice 👍🏼

@jyu115 jyu115 merged commit 74ece2a into master Dec 15, 2023
@jyu115 jyu115 deleted the MOB-7322-automate-ios-sdk-release branch December 15, 2023 21:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants