summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlex Goodman <wagoodman@users.noreply.github.com>2023-07-07 11:54:08 -0400
committerAlex Goodman <wagoodman@users.noreply.github.com>2023-07-07 11:54:08 -0400
commit559e5e2dbe84a9a9df3bd5a2dbe9a01c9c11d9a6 (patch)
tree96826ef73a682f41f88dffe39e64768d2e8a44e1
parent800398060434ce8dfda6b4d182b72e2a9724e9f6 (diff)
add release process
-rw-r--r--README.md2
-rw-r--r--RELEASE.md24
2 files changed, 25 insertions, 1 deletions
diff --git a/README.md b/README.md
index cc2b8f0..fd636be 100644
--- a/README.md
+++ b/README.md
@@ -104,7 +104,7 @@ sudo apt install ./dive_${DIVE_VERSION}_linux_amd64.deb
```bash
export DIVE_VERSION=$(curl -sL "https://api.github.com/repos/wagoodman/dive/releases/latest" | grep '"tag_name":' | sed -E 's/.*"v([^"]+)".*/\1/')
curl -OL https://github.com/wagoodman/dive/releases/download/v${DIVE_VERSION}/dive_${DIVE_VERSION}_linux_amd64.rpm
-rpm -i dive_0.9.2_linux_amd64.rpm
+rpm -i dive_${DIVE_VERSION}_linux_amd64.rpm
```
**Arch Linux**
diff --git a/RELEASE.md b/RELEASE.md
new file mode 100644
index 0000000..a58c6cf
--- /dev/null
+++ b/RELEASE.md
@@ -0,0 +1,24 @@
+# Release process
+
+
+## Creating a release
+
+**Trigger a new release with `make release`**.
+
+At this point you'll see a preview changelog in the terminal. If you're happy with the
+changelog, press `y` to continue, otherwise you can abort and adjust the labels on the
+PRs and issues to be included in the release and re-run the release trigger command.
+
+
+## Retracting a release
+
+If a release is found to be problematic, it can be retracted with the following steps:
+
+- Deleting the GitHub Release
+- Untag the docker images in the `docker.io` registry
+- Revert the brew formula in [`wagoodman/homebrew-dive`](https://github.com/wagoodman/homebrew-dive) to point to the previous release
+- Add a new `retract` entry in the go.mod for the versioned release
+
+**Note**: do not delete release tags from the git repository since there may already be references to the release
+in the go proxy, which will cause confusion when trying to reuse the tag later (the H1 hash will not match and there
+will be a warning when users try to pull the new release).