-
Notifications
You must be signed in to change notification settings - Fork 70
How to make release
0) NOT ALWAYS REQUIRED: Update version ONLY in case main project released BUG fixes (not a minor version bump).
mvn versions:set -DnewVersion=4.10.1-SNAPSHOT && mvn versions:commit
git add pom.xml checkstyle-all/pom.xml checkstyle-sonar-plugin/pom.xml
git commit -m "config: update to 4.10.1-SNAPSHOT" && git push
1) Test it first. https://github.com/checkstyle/sonar-checkstyle/wiki/How-to-test-released-binary
1.1) Push all to remote and wait for CI to be green. Checkstyle version update require update in root [pom.xml[(https://github.com/checkstyle/sonar-checkstyle/blob/master/pom.xml#L7) only. Close issue for checkstyle upgrade. Do not forget update README file with new version in table.
1.2) Recheck that there are no Bugs and Vulnerabilities at https://sonarcloud.io/dashboard?id=checkstyle_sonar-checkstyle. It is mandatory to pass the gate level for deploying to the Sonar Update Center.
2) Generate release notes.
git log --pretty=oneline --abbrev-commit $(git rev-list --tags --max-count=1)..HEAD \
| grep -vE "minor|doc|config|maven-release-plugin" | sed 's/^....... //'
2.2) Update README file for new version.
3) Bump version.
mvn release:prepare release:clean -B
4) Make a released binary JAR.
git checkout $(git rev-list --tags --max-count=1)
mvn clean package
git checkout master
5) Upload binary file and UPDATE release notes at GitHub page. https://github.com/checkstyle/sonar-checkstyle/releases
5.1) Close milestone, a new is required. https://github.com/checkstyle/sonar-checkstyle/milestones
5.2) NOT ALWAYS REQUIRED: Restore version to major in case there was bug fix release
mvn versions:set -DnewVersion=4.11-SNAPSHOT && mvn versions:commit
git add pom.xml checkstyle-all/pom.xml checkstyle-sonar-plugin/pom.xml
git commit -m "config: update to 4.11-SNAPSHOT" && git push
6) Announcements
- Send email announcement to the Checkstyle https://groups.google.com/forum/#!forum/checkstyle-announce mailing list.
- Submit SourceForge https://sourceforge.net/p/checkstyle/news/.
- Put news in twitter: https://twitter.com/checkstyle_java .
7.1) Release PR to SonarQube Make a release PR to https://github.com/SonarSource/sonar-update-center-properties. Example: https://github.com/SonarSource/sonar-update-center-properties/pull/15
7.2) Release post to SonarQube
Post a [NEW RELEASE]
message to the SonarSource Community forum: https://community.sonarsource.com/c/plugins.
It has to contain:
- Short description
- SonarQube compatibility
- SonarCloud project dashboard
- Link to PR Example: https://community.sonarsource.com/t/new-release-sonar-checkstyle-4-20/9744
Reference for SonarCloud release process: https://docs.sonarqube.org/display/DEV/Deploying+to+the+Marketplace#DeployingtotheMarketplace-Announcingnewreleases