Ensure your local workstation is configured to be able to Sign commits.
Make sure local and remote state are sync:
$ git checkout master
$ git pull origin master
$ git push origin master
Make sure all test pass and docs are updated
$ rake fmt test build test:e2e
There are some extra steps to check that everything else is working as expected
- Container
$ rake container:build
- Demo
$ rm -fr demo $ rake demo:serve $ open localhost:4000
- Update CHANGELOG.md:
- Add a new version header at the top of the document,
just after
# [Unreleased]
- Update links at bottom of changelog
- Add a new version header at the top of the document,
just after
- Bump version in shard.yml.
- Bump version in src/medup/version.cr.
Create a release commit and tag
$ export RELEASE_VERSION=x.y.z
$ git commit -a -S -m "Release v${RELEASE_VERSION}"
$ git tag -s "v${RELEASE_VERSION}"
$ git push origin master --follow-tags
Create a new release in Github:
- Title should equal to tag name. Example:
v0.1.3
- Description should have a text from Changelog
Create and push container image to DockerHub:
$ rake container:push
-
Update homebrew-medup manifest
- Update
version
string to your released version; - Update
url
with new release tag; - Update
sha256
from release archive file;
- Update
-
Do a manual check of installing command line via brew
- While in the homebrew-medup directory...
Note: it's normal to get some errors when homebrew attempts to load the file as a Cask instead of a formula, just make sure that it still gets installed.
$ brew install ./medup.rb --debug
- Check installed version
$ medup --version
- While in the homebrew-medup directory...
-
Commit and push changes to master branch