Release process - bonkey/zalando-commerce-ios GitHub Wiki
Release process is heavily based on calypso.rb.
It consists of the following basic steps:
- Update version number
- Create release notes
- Update docs
- Publish in CococaPods
- Remove finished issues from the projects
They are done with simple script commands.
Optional: preview changelog
./calypso.rb release preview
Presents contents of the generated release notes.
Update version and create release notes
./calypso.rb release create
- Runs
./calypso.rb version createinternally (updates version number, creates and pushes git tag) - Builds release notes from closed issues since last release
- Creates a draft of release on github.com and opens it in browser
Next Steps
- Refine the issues opened in the browser
- Issues that has multiple tags are repeated for each tag (decide manually which tag should be kept)
- Some issues are not important to be mentioned at all (remove them)
- Publish the release
Update public documentation
Use this command on a separate branch in order to create a PR to the master
./calypso.rb docs publish
More details: Build code documentation.
Publish in CocoaPods repository
./calypso.rb pod publish
More details: CocoaPods publication
Note: Carthage is not centralized. Everything needed is already inside the repository. (more)
Clean issues from projects
./calypso.rb issues clean_closed
Removes all closed issues from main GitHub Projects (defined in CLEANABLE_GITHUB_PROJECT_COLUMNS in consts.rb)
Verify correctness of pods
Buddybuild runs a build automatically for each created tag and, additionally and only for builds from tags, runs a script to verify podspecs.
However, it takes some time before it will finish and update Release with a link to demo app. So, after ~2 hours please check if a release contains the link and keep an eye on buddybuild notification emails.