diff --git a/README.dev.md b/README.dev.md index 235f0a8..bdaeb99 100644 --- a/README.dev.md +++ b/README.dev.md @@ -1,13 +1,27 @@ +# Prereqs + +* You must have a local Go environment to be able to run tests. +* You must have the [GitHub CLI tool (gh)](https://cli.github.com/) + installed, in your path, and logged into an account that can + make GitHub releases on the repo. +* Your environment also must have `bash`, `git` and `sed` available. + # Releasing -* Install `goreleaser`. Refer to its docs. -* Set a `GITHUB_TOKEN` environment variable. Refer to `goreleaser` docs for - information. -* Update `CHANGELOG.md`. - * Mention recent changes. - * Set a version if there is not one. - * Set a release date. -* Commit `CHANGELOG.md`. -* Tag the release: `git tag -a v1.2.3 -m 'Tag v1.2.3'`. -* Push the tag: `git push origin v1.2.3`. -* Run `goreleaser`. +* Review open issues and PRs to see if anything needs to be addressed + before release. +* Create a branch e.g. `horgh/release` and switch to it. + * `main` is protected. +* Set the release version and release date in `CHANGELOG.md`. Be sure + the version follows [Semantic Versionsing](https://semver.org/). + * Mention recent changes if needed. +* Commit these changes. +* Run `dev-bin/release.sh`. + * You might need to initialize/update submodules to successfully run tests, + eg. `git submodule update --init --recursive`. +* Verify the release on the GitHub Releases page. +* If everything goes well, the authorized releases will receive an email + to review the pending deployment. If you are an authorized releaser, + you will need to approve the release deployment run. If you are not, + you will have to wait for an authorized releaser to do so. +* Make a PR and get it merged.