Create your release with ease!
The main purpose is to publish my lib with more ease.
I want to have one simple command that:
- Generate a changelog from the last tag to HEAD
- Bump versions in differents files (Cargo.toml, package.json, etc)
- Create the commit for this release
- Create the tag for this release
- Create the github release
- Publish to npm (or crates.io)
Each releases of release-me
are done with the version being released at the time. You can see these releases there: https://github.com/fabienjuif/release-me/releases
I hope each version will be better and better 😁
- Use gitmoji-changelog to create the latest release changelog
- Let the user change its changelog text
- Commit the not indexes files
- Create the tag
- Push the tag
- Create the github release
- Publish to npm
- Publish to cargo
## set your github token
## - the github token needs to have "repo" privileges
## - you can create a new token here: https://github.com/settings/tokens/new
export GITHUB_TOKEN="your token"
## try it
docker run --rm -e GITHUB_TOKEN=${GITHUB_TOKEN} -v ${PWD}:/repo fabienjuif/release-me /repo --release <your_version>
# ex: docker run --rm -e GITHUB_TOKEN=${GITHUB_TOKEN} -v ${PWD}:/repo fabienjuif/release-me /repo --release
## to see which options you can use:
docker run --rm -e GITHUB_TOKEN=${GITHUB_TOKEN} fabienjuif/release-me --help
## install it
cargo install release-me
# maybe you should reset your env here (relaunch your terminal or type `zsh` (or `bash`))
## set your github token
## - the github token needs to have "repo" privileges
## - you can create a new token here: https://github.com/settings/tokens/new
export GITHUB_TOKEN="your token"
## try it
release-me . --release #<your_version>
# ex: release-me . --release v0.1.0
## to see which options you can use:
release-me --help
This project use a Makefile
, here are the main targets:
package
: build the docker imageci
: build the project (dev mode) and check clippy and rustfmt
You can still use cargo if you want to, eg building the release version with: cargo build --release