Skip to content

How to make release

Roman Ivanov edited this page Jun 19, 2019 · 68 revisions

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 only. Close issue for checkstyle upgrade.

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

5.2) update Versions in README Do not forget update README file with new version in table.

6) Announcements

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:

Reference for SonarCloud release process: https://docs.sonarqube.org/display/DEV/Deploying+to+the+Marketplace#DeployingtotheMarketplace-Announcingnewreleases