-
Notifications
You must be signed in to change notification settings - Fork 19
Releasing
mplorentz edited this page Jan 11, 2022
·
41 revisions
If you are a Planetary employee who wants to know how to release Planetary's iOS app you have come to the right place.
- Check out planetary-ios and follow the Developer Installation instructions in the README.md.
- Check out planetary-social/planetary-config-ios repository.
- Get added to the Verse Communications Apple Developer team with Manager permissions or higher.
- Ask an existing team members for the secrets stored in
cocoapods-keys- For each secret key run
pod keys set {key} {value}
- For each secret key run
- Ask @rabble to manually update the preloaded feed (TODO: document and/or automate this process)
- Checkout the latest commit of the
masterbranch. - Create a release branch including the version number like
release/1.0.16. - Increment the build number and version number if necessary, following Semantic Versioning guidelines
- Copy the
Shared.release.xcconfigfile with build secrets from planetary-social/planetary-config-ios. If you have checked out theplanetary-config-iosrepo in the same directory asplanetary-iosthen you can just run the following command from theplanetary-iosdirectory:
cp ../planetary-config-ios/Shared.release.xcconfig Source/Controller/Configs/
- Select 'Any iOS Device' as the build destination and run Product → Archive
- From the Xcode Archives window, choose your archive and click "Distribute App"
- Follow the prompts, selecting the following values:
- method of distribution: App Store Connect
- destination: Upload
- Include bitcode for iOS content: unchecked
- Upload you app's symbols: checked
- Manage Version and Build Number: checked
- Re-sign "Planetary": Automatically manage signing
- At the end of the the wizard, click "Upload"
- Run
git reset --hard HEADin your local Git repo to remove the secrets fromShared.release.xcconfig. Warning: this will erase any other uncommitted changes in your repository.
- Wait for the build to finish processing in the TestFlight dashboard.
- Click on the build in the TestFlight Dashboard and fill out the Test Details box.
- Distribute the TestFlight build to the appropriate groups and conduct UAT if necessary.
- Fill out the App Store page, selecting "Manually release this version" in the Version Release Section. When finished click "Submit for Review".
- Perform final QA testing.
- Update CHANGELOG.md in the Github repository.
- Create a new page in the Release Notes section in Zendesk.
- Tag the deployed commit with the semantic version number i.e. "1.0.7".
- Create a Github Release, copying in the tag name and changelog entries.
- Click "Release this Version" in App Store Connect
- Merge the release branch into
master - (Optional) Post release notes from the Planetary accont on SSB and other social media.
- Update this wiki page with any procedural changes.
Planetary: Resilient technology for human connection