Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 72 Next »

Tempted to go ahead and write your own plugin? Want to contribute your plugin back to the community? If you do, we'd be happy to host your FOSS plugins in the SonarSource plugin forge. After all, it gives you a broader audience and enhances the community. Everyone’s a winner. Plus:

  • It's easier for the community to help you
  • Source code is hosted in the Github organization named SonarCommunity
  • Use JIRA to track issues
  • Use Jenkins for continuous integration
  • Use this wiki for documentation
  • Most of all, the plugin is available in the Update Center, so users can quickly install the plugin from the SonarQube web interface

But there are a few rules we must ask you to follow.

  • meet our coding standards
  • not be misleading in terms of content (the code needs to do pretty much what the name and description say it does)
  • have a business-friendly license (the default license is LGPL3)
  • not compete with existing SonarSource products (sorry, but we gotta pay the bills somehow)
  • receive +1’s from three voting members of the development list and no -1’s for the initial release

To keep your plugin in the forge, it must remain in compliance with everything on the first list and:

  • be maintained over time (meaning you should pay attention to the mailing lists and respond to bugs and API changes)

  • receive at least one +1 from a voting member of the development mailing list for subsequent releases

If any of these requirements are not met, or stop being met (if, for example you change the license to one that’s not business-friendly) we may remove the plugin from the forge immediately

Request Hosting

Sharing an existing plugin

  1. Publish the source code of your plugin on a public Github repository
  2. Create an account at Codehaus and subscribe to dev@sonar.codehaus.org
  3. Send an e-mail to dev@sonar.codehaus.org to explain the purpose of your plugin, detail its features and link to its source code repository
  4. Reviews will be performed by contributors on both the added value of the plugin and the quality of the source code

Starting a new plugin

  1. Create an account at Codehaus and subscribe to dev@sonar.codehaus.org
  2. Send an e-mail to dev@sonar.codehaus.org to explain the purpose of your plugin
  3. Discussion on the added value of the plugin will take place

When the plugin is approved, send your Codehaus ID to dev@sonar.codehaus.org and we'll give you a commit access to github.

Prerequisites

  • The plugin must support Java 5 (Java 6 since March 2013). The Continuous Integration job uses Oracle JDK 6
  • The plugin is built with Maven 2.2.x or 3.x

Principles

When you utilize the forge, we request that you respect the following principles :

  1. The copyright belongs to whoever wrote the plugin
  2. Follow the release process described bellow

Maven POM

  • The directory name is the plugin name
  • The groupId is 'org.codehaus.sonar-plugins' and artifactId is 'sonar-<name>-plugin'. For example the plugin "foo" is stored in the directory "foo" and its artifact id is "sonar-foo-plugin"
  • Set the following properties :

    pom.xml
  • Configure your pom by overriding values provided by parent - see SonarQube Plugins Forge Parent POM. Default license is LGPL3.
  • Follow Maven POM Code Convention
  • Add the plugin to the main pom of the forge

Continuous Integration

Please send an email to the dev mailing list in order the plugin to be added to our Continuous Integration server.

How to Release

The release process is explained in this page.

  • No labels