Update RELEASING.md

This commit is contained in:
Christian Legnitto 2019-05-16 19:22:20 -07:00 committed by GitHub
parent 4eea56351b
commit 43fcc63c23
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -2,6 +2,17 @@
## Prerequisites
It is generally best to start with a clean respository dedicated to a release so that no git weirdness happens:
```
git clone git@github.com:graphql-rust/juniper.git juniper_release;
cd juniper_release;
```
We use the `nightly` toolchain when releasing. This is because some of our crates require nightly:
`rustup default nightly`
We use [`cargo-make`](cargo-make) and [`cargo-release`](cargo-release) to automate crate releases. You will need to install them locally:
- `cargo install -f cargo-make`
@ -15,6 +26,8 @@ There are two general classes of release and each require running different auto
2. A subset of workspace crates need to be released, or not all crate releases share the same release level. _These commands start with `release-skip-[whatever]`._
**All release commands must be run from the root directory of the repository.**
## Determine new release level
For each crate, determine the desired release level (`patch`, `minor`, `major`). Set the `RELEASE_LEVEL` env variable to the desired release level.