Make sure to follow any initial setup instructions specified in the README.md.
- Clone Strata
- Run
rake clone
to setup the Strata repo and all of its submodules. - Clone Rainforest.
- Run through Rainforest README to setup the repo and all of its submodules. Note that this may take a while.
- Run
gem install postit
. - Setup
options.yml
configuration file:
Example options.yml
file:
---
strata: '~/Development/Strata'
branch_prefix: 'dnkoutso/'
rubygems: '~/Development/rubygems' # Optional unless a Molinillo release is required.
bundler: '~/Development/bundler' # Optional unless a Molinillo release is required.
- Install
gh
CLI tool viabrew install gh
and rungh auth login
. - Make sure GPG is setup to your GitHub account keys.
- Get access to the gems you want to publish on rubygems.org.
- It is a good idea to run
bundle install
within the CocoaPods to ensure Bundler can be configured successfully.
- If your release includes CocoaPods then open a PR that runs
bundle update cocoapods
. Ensure the build passes and is merged. This ensures CocoaPods will work with the new releases of all its dependencies that are about to be released. - Run
rake status
to help you figure out which gems need a release. - Run
rake pull
to update all repos (after checking outmaster
on all of them). - Run
rake topological_order > topological_order.txt
. - For each gem you want to release, in topological order (go from the top of
topological_order.txt
to the bottom), run:- Check formatting of latest release in the
CHANGELOG.md
. - Install and use the latest Ruby version used by the gem you are releasing.
- Ensure the git config of the gem's repo is set to the account you are publishing with. Use
git config user.name "John Doe"
andgit config user.email [email protected]
. - Run
rake super_release:[REPO_NAME, VERSION]
(e.g.rake super_release\[Core,1.7.0\]
. - If
super_release
fails for a gem then do the following:cd
into the gem directory that failed.- Run
git reset --hard
. - Get the failure fixed, and start over.
- Check formatting of latest release in the