Skip to content

[Admin] Release Process

Olivier Halligon edited this page Aug 17, 2020 · 7 revisions

Releasing a new version of Stencil

Prerequisites

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)

Creating the release PR

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]

Finishing the release

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