From 7199462c3ba641bf9bcbe9e8ed234a6047dec757 Mon Sep 17 00:00:00 2001 From: danijelTxFusion Date: Fri, 12 Jan 2024 14:14:34 +0100 Subject: [PATCH] docs: add release process --- .github/RELEASE.md | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 .github/RELEASE.md diff --git a/.github/RELEASE.md b/.github/RELEASE.md new file mode 100644 index 0000000..0ec3cd6 --- /dev/null +++ b/.github/RELEASE.md @@ -0,0 +1,29 @@ +# Release Process + +This document provides a comprehensive guide on the steps to execute a release for this project. + +## Prerequisites + +Before initiating the release process, ensure the following prerequisites are met: + +- Commit messages must adhere to the [conventional commit specification](https://www.conventionalcommits.org/). +- Proper permissions are in place to create and manage releases. + +## Steps + +### 1. Create Release + +1. **Merge Pull Request to appropriate branch:** + - Ensure that the changes intended for release are encapsulated in a Pull Request. + - Merge the approved Pull Request into the `main`. Currently, + only the `main`, `beta` branches are allowed for releasing. + +2. **Manual execution of [Release](workflows/release.yml) Action:** + - The `Release` GitHub Action automates versioning based on conventional commit messages. Pipeline creates tag, release, + and pushes new commit in which updates `CHANGELOG.md` and version in `package.json`. + - Click on the `Run workflow` button and select the desired branch or run the following command: + `gh workflow run --ref release.yml`. + +### 2. Publish Release + +1. Releases on GitHub are automatically uploaded to `https://pkg.go.dev` (it requires some time to registry index the release). \ No newline at end of file