How Could I run sonar runner in Bamboo
Asked by Manikandan Thiagarajan:

How Could I run sonar runner in Bamboo

Anything we want to do in admin side

How to Install the sonar runner and How could i provide parameter in configuration page

How to configure sonar runner with Bamboo


Answers:
author: David Karr
body: There is a Bamboo plugin for Sonar, but the last I checked, it didn't work with the version of Bamboo we have.

A relatively simple workaround is simply to install the Sonar runner to a directory on the same host as you've installed Bamboo, and to create tasks in Bamboo plans that use the "Script" task type, and use the "Inline" variation. Then, simply construct a command line that specifies the full path to your sonar-runner, along with any command-line properties you want to set.

comments: author: Manikandan Thiagarajan
body: inline variation means what.

how could i specify the project related properties in sonar runner

any installation and configure guide available to install and configure sonar runner with bamboo


author: James Youngman
body: Can you please send me examples of the command line properties this program will accept


author: David Karr
body: The "Script" variation means that you specify the path to a script file to execute. The "Inline" variation means that you enter the complete command line to execute.

Once you've installed sonar-runner on the Bamboo host, you run sonar-runner from Bamboo just like you run any other command-line tool, you just specify the command line and its properties.

For instance, if you've installed sonar-runner in "/sites/sonar-runner-2.0/", then the contents of the "Script Body" text box would look something like this:

```
/sites/sonar-runner-2.0/bin/sonar-runner \-Dsonar.scm.enabled=true \-Dsonar.scm-stats.enabled=true \-Dsonar.language=java \-Dsonar.profile=myprofile \-Dsonar.forceAnalysis=true \-Dsonar.libraries="../myapp.ear/atglib/*.jar" \-Dsonar.binaries="gen/main/classes,gen/test/classes" \-Dsonar.sources="src/main/java,src/test/java" \-Dsonar.surefire.reportsPath=gen/reports/artifacts/junit \-Dsonar.cobertura.reportPath=gen/reports/artifacts/coverage/coverage.xml \-Dsonar.dynamicAnalysis=reuseReports \-Dsonar.core.codeCoveragePlugin=cobertura \-Dsonar.projectDescription="Bamboo: group/plan" \-Dsonar.projectKey=mygroup \-Dsonar.projectName=myapp \-Dsonar.branch=mybranch \-Dsonar.projectVersion=1402 \-Dsonar.scm.url=scm:svn:svn:&lt;svnpath&gt; \-Dsonar.login=loginname -Dsonar.password=loginpwd
```


author: James Youngman
body: Are these parameters documented somewhere?


author: David Karr
body: (I wonder why the "link" button isn't enabled while I'm entering this?)

Certainly. In the sonar documentation, like \<<http://docs.codehaus.org/display/SONAR/Analysis+Parameters>\> and \<<http://docs.codehaus.org/display/SONAR/SCM+Activity+Plugin>\>


author: Nihar Suryawanshi
body: Do you mean to say install sonar-scanner on the Bamboo agent?


author: David Karr
body: The two variations of a "Script" are "File" and "Inline". The former specifies a path to a script file, the latter has the command line "inline" in the script definition. You specify project-specific properties on the sonar-runner command line, which you can read about in the sonar-runner documentation, which is not part of Bamboo.

comments: author: Manikandan Thiagarajan
body: i want to install sonar runner in my machine.bamboo is not installed on my machine

is it possible to install the sonar runner in my machine and view the analysis reports(bamboo has installed in another machine)


author: David Karr
body: I'm assuming you're saying that you want to make sonar-runner run from Bamboo, but run sonar-runner on the remote box. That implies that you'd have a script or inline task using "ssh" to run the remote script.