-
Notifications
You must be signed in to change notification settings - Fork 225
[Admin] Release Process
Olivier Halligon edited this page Aug 17, 2020
·
7 revisions
To be able to make a release, you need to:
- Have GitHub push access to
master
(be a maintainer) - Have your GitHub credentials/token stored into your
~/.netrc
file - Be an owner of the pod on CocoaPods' trunk (see
pod trunk info Stencil
)
To prepare a new release, simply run bundle exec rake release:new
.
This will prompt you for the version number to make the release for, then run the release:start[version]
task which will make all the necessary changes and create the PR.
Details of the actions automated by release:start[version]
- Create a new
release/{version}
branch - Update the version in the
Stencil.podspec.json
, especially both theversion
ANDsource.tag
keys - Update the header in the CHANGELOG.md to replace "Master" with the version to release
- Update the versions in the docs, especially:
- Lint the podspec (
pod lib lint Stencil.podspec.json
) - Push the changes, and create a PR
Once the PR has been merged into master
, run bundle exec rake release:finish
.
This will push the release to trunk, create a GitHub release, then reset the CHANGELOG.
Details of the actions automated by release:finish
- Create a tag on the merge commit in
master
- Push the pod to trunk (
pod trunk push Stencil.podspec.json
) - Create a GitHub release, with the first section of the CHANGELOG (= changes for this version) as its body
- Reset the CHANGELOG by adding a new, empty "## Master" section, and push it to
master