diff --git a/RELEASE.md b/RELEASE.md index cf676811..c4b38775 100644 --- a/RELEASE.md +++ b/RELEASE.md @@ -4,14 +4,18 @@ This project is hosted on [Clojars][clojars]. You can see it [here][release-sit Releasing the project requires these steps: -0. Set the version number in the project.clj file. -1. Run ```lein do clean, test``` to ensure everything is working as expected. -2. Use a GitHub [project release][github-release-url] to release the project and tag (be sure it follows [semver][semantic-versioning]) -3. Run ```lein deploy clojars``` to deploy the project to the Clojars repository. -4. Update `main` to a new minor version +0. Assert all tests are passing and the project builds : `lein do clean, test` +1. Make sure CHANGELOG.md is up-to-date for the upcoming release. +2. Assert you have Github setup with [gpg](https://docs.github.com/en/authentication/managing-commit-signature-verification/adding-a-gpg-key-to-your-github-account) +3. Add gpg key to [sign](https://git-scm.com/book/en/v2/Git-Tools-Signing-Your-Work) your commits + * GPG will likely require an additional export to spawn an interactive prompt for signing: + ```export GPG_TTY=$(tty)``` +4. Create a [Clojars][clojars] Account and [Deploy Token](https://github.com/clojars/clojars-web/wiki/Deploy-Tokens) if you do not already have one. +5. Create a lein [credentials](https://leiningen.org/deploy.html#gpg) file using the account and token above. +6. Run `lein release `, where release-type is one of `:patch`,`:minor` and `:major` +7. Push the new main branch to the repo. +8. Push the new tag to the repo. [clojars]: https://clojars.org [release-site]: https://clojars.org/com.cerner/clara-rules -[project-url]: https://github.com/cerner/clara-rules/ -[semantic-versioning]: http://semver.org/ -[github-release-url]: https://help.github.com/articles/creating-releases/ +