From de5d29b749beb9862dca6ddc7b08f30aba1e725b Mon Sep 17 00:00:00 2001 From: Osip Fatkullin Date: Wed, 31 Jul 2024 15:48:24 +0200 Subject: [PATCH] docs: Add RELEASING.md --- RELEASING.md | 49 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 RELEASING.md diff --git a/RELEASING.md b/RELEASING.md new file mode 100644 index 0000000..3928091 --- /dev/null +++ b/RELEASING.md @@ -0,0 +1,49 @@ +# Releasing + +**Release:** + +1. Ensure the repository is up to date and checkout the `develop` branch. + +2. [Update version](#version-update) and remove `-SNAPSHOT` suffix + +3. Update the `CHANGELOG.md`: + 1. Replace `Unreleased` section with the release version + 2. Add a link to the diff between the previous and the new version to the bottom of the changelog + 3. Add a new empty `Unreleased` section on the top of the file + +4. Commit and push the changes. + ```bash + git commit -am "version: [version here]" + git push + ``` + +5. [Create a Pull Request](https://github.com/RedMadRobot/gradle-infrastructure/compare/main...develop) from `develop` to `main` with the name of the next version. + Copy the changelog to the description. + +6. Merge the Pull Request and create a release tag on the `main` branch: + ```bash + # Pull main branch + git switch main + git pull --rebase origin + + # Push the release tag + git tag [version] + git push origin [version] + ``` + Release tag push triggers a release workflow on the CI which uploads release artifacts to Maven Central and creates a GitHub release. + +**After release:** + +1. Rename [milestone](https://github.com/RedMadRobot/gradle-infrastructure/milestones) "Next" to the released version and close it. +2. Create a new milestone with the name "Next." +3. In the `develop` branch [update version](#version-update) to the next potential version with suffix `-SNAPSHOT`. +4. Commit and push. + ```bash + git commit -am "version: [version here]-SNAPSHOT" + git push + ``` + +## Version Update + +1. Update a version in `gradle.properties` and `README.md` +2. Update a version used in samples in `build.gradle.kts`