- The continuous integration job does not fail.
- The JIRA issues included in the release are closed.
- The source code quality of the plugin must be acceptable: the SQALE index must be A, and the SQALE remediation factor must not increase between two releases.
- A dedicated page is created for the plugin in the wiki.
The snapshot version to be tested must be publicly available. If the plugin is hosted on:
- Github, then the artifact is automatically deployed by Cloudbees Jenkins to http://repository-sonarplugins.forge.cloudbees.com/snapshot/org/codehaus/sonar-plugins.
- Codehaus (svn/bamboo), then the artifact must be manually deployed to http://snapshots.repository.codehaus.org/org/codehaus/sonar-plugins/. Configure your Maven settings as described in the following section then execute the command
mvn clean deploy
Call a Vote
Before a release can occur, a vote must take place.
The vote is initiated by sending an email to email@example.com with a link to the snapshot artifact. The email subject is prefixed with [VOTE]. Explain the plugin, status, and give any other info you feel is relevant. The standard is to wait 72 hours for responses. This gives other developers time to test the plugin before placing their vote. Each plugin committer gets one vote: -1 meaning "no" or +1 meaning "yes."
Only SonarQube plugin committers can vote. The first release requires three +1's and no -1's. For subsequent releases, the vote can be passed by lazy consensus: it passes if there are no -1's.
- Close the vote on the dev mailing-list: respond to your earlier [VOTE] post, announcing that the vote is closed and who the voters were, or that the vote passes by lazy concensus
- Check the prerequisites
Set your Codehaus username/password in Maven settings.xml:
- Install Codehaus SSL certificates into JDK
Deploy the plugin to the Maven central repository by executing the following command with default values:
- Send an email to firstname.lastname@example.org to ask for the release of the version in JIRA
- If it is the first release of the plugin, add it to the Plugin Library page
- Update the Version compatibility matrix page
- If a sonar-example is available, ask to have the the plugin version updated in the validation.txt file
- Send an email to email@example.com with the message of the announcement so that SonarSource can publish it on the plugins feed.
- Send an email to firstname.lastname@example.org to ask that the release be added to the Update Center and that the header on the wiki plugin page be updated.