- The continuous integration job does not fail.
- The JIRA issues included in the release are closed.
- Check the source code quality of the plugin. The SQALE index must be A and the SQALE remediation factor must not increase between two releases.
- A dedicated page is created in the wiki.
Call a Vote
Before a release can occur, a vote typically takes place.
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
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 any other info you feel relevant. The standard is to wait 72 hours for responses. This gives other developers time to test the plugin before placing their vote. Votes are represented as numbers between -1 and +1, with -1 meaning 'no' and +1 meaning 'yes.'
Only Sonar plugin committers can vote. The first release requires three +1 and no -1. Then vote is adopted by lazy consensus for next releases. It passes if it doesn't have any -1.
- Close the vote on the dev mailing-list
- Check the prerequisites
Set your Codehaus username/password in Maven settings.xml:
Code Block title settings.xml lang xml
<settings> <servers> <server> <id>codehaus.org</id> <username>CODEHAUS_LOGIN</username> <password>CODEHAUS_PASSWORD</password> </server> </servers> </settings>
- Install Codehaus SSL certificates into JDK
Deploy the plugin to the Maven central repository by executing the following command with default values:
mvn release:prepare release:perform
- Release the version in JIRA
- Update the Change Log section on the wiki plugin page by adding a JIRA Issues macro. Use the following properties:
- JIRA Field Columns to Display: type;key;summary;priority
- Cache: on
- Anonymous Retrieval: checked
- Width: 900
- Height: <leave it empty>
- Title: Release X.X
- Render Mode: static
- If it is the first release of the plugin, add it to the Plugin Library page
- Update the Version compatibility matrix page
- Announce the release on the mailing-lists: firstname.lastname@example.org, email@example.com and firstname.lastname@example.org (you must subscribe to these lists in xircles )
- Send an email to email@example.com to ask for adding the release to the Update Center and to update the header on the wiki plugin page. This redundant step will be improved later.