diff --git a/RELEASING.md b/RELEASING.md new file mode 100644 index 000000000..f84ef8a1c --- /dev/null +++ b/RELEASING.md @@ -0,0 +1,18 @@ +# Releasing Mutiny + +## Prepare a release pull-request + +1. Make sure that all issues and pull-requests assigned to the target milestone have been closed. +2. Run: `just prepare-release 2.7.0-RC3` (replace with the correct version number). +3. Review the changes in the branch. +4. Open a pull-request: `gh pr create`. +5. Once all tests pass, merge it: + - the `pre-release.yml` workflow will create a Git tag, then + - the `release.yml` workflow will push to Maven Central, then + - the `deploy-site.yml` workflow will update the website (except for release candidates and milestones). + +## GitHub release notes + +Run the following command: `just jreleaser 2.6.2 2.7.0-RC3` where you specify the previous and the release tags to compute release notes. + +If the release notes fail to update or if they are too big for JReleaser to update them, then you can read them from `target/jreleaser/release/CHANGELOG.md` and manually update the release notes on GitHub. diff --git a/justfile b/justfile index ca452db38..5c9da5016 100755 --- a/justfile +++ b/justfile @@ -23,15 +23,18 @@ prepare-release version: # Use JReleaser to generate a changelog and announce a release jreleaser previousReleaseTag releaseTag: #!/usr/bin/env bash - echo "🚀 Use JReleaser" + echo "🚀 Use JReleaser for the release of {{previousReleaseTag}} to {{releaseTag}}" export CURRENT_BRANCH=$(git rev-parse --abbrev-ref HEAD) export JRELEASER_GITHUB_TOKEN=$(gh auth token) export JRELEASER_PROJECT_VERSION={{releaseTag}} export JRELEASER_TAG_NAME={{releaseTag}} export JRELEASER_PREVIOUS_TAG_NAME={{previousReleaseTag}} + echo "💡 Checking out tag {{releaseTag}}" git checkout {{releaseTag}} ./mvnw --batch-mode --no-transfer-progress -Pjreleaser jreleaser:full-release -pl :mutiny-project + echo "💡 Back to branch ${CURRENT_BRANCH}" git checkout ${CURRENT_BRANCH} + echo "✅ JReleaser completed" # Clear RevAPI justifications clear-revapi: diff --git a/pom.xml b/pom.xml index aaf61b03b..3bb1bf88b 100644 --- a/pom.xml +++ b/pom.xml @@ -573,6 +573,7 @@ smallrye smallrye-mutiny + true true true