Skip to content

Latest commit

 

History

History
41 lines (23 loc) · 2.32 KB

RELEASE_PROCEDURE.md

File metadata and controls

41 lines (23 loc) · 2.32 KB

Release procedure

When you release fixed version of SpotBugs, please follow these procedures.

Update version info

  • version in build.gradle
  • version number in CHANGELOG.md
  • version, full_version, maven_plugin_version and gradle_plugin_version in docs/conf.py

The PR containing these changes needs to be rebased and merged to master. Since the rebase changes the commit ids, a tag needs to be created on master and pushed there. The push of this tag starts the release CI job.

Release to Maven Central

When we push a tag, the build result on GitHub Actions will be deployed to the SonaType Nexus, and published to the Maven Central automatically by Gradle Nexus Publish Plugin. Then we can find artifacts in the Maven Central after several hours. See the build phase in .github/workflows/release.yml calling the publishToSonatype and closeSonatypeStagingRepository gradle tasks.

Release to Eclipse Update Site

It's automated by GitHub CI.

When we push tag, the build result will be deployed to eclipse-candidate repository. When we push tag and its name doesn't contain _RC, the build result will be deployed to eclipse repository.

See Deploy eclipse, Deploy eclipse-candidate and Deploy eclipse-latest phases in .github/workflows/release.yml for detail.

Release to Eclipse Marketplace

Update version in Eclipse Marketplace page. If you have no permission, please contact with @KengoTODA or @iloveeclipse.

Release to Gradle Plugin Portal

This project is not released directly to the Gradle Plugin Portal, that is the role of the SpotBugs Gradle Plugin project.

Release to ReadTheDocs

See docs/README.md for detail.

Update the Changelog at GitHub Release

The CHANGELOG on the GitHub release page only contains a link to the correct version of the CHANGELOG.md file (see createReleaseBody task in build.gradle). It needs to be manually updated after the new GitHub release is created.