
All, Is there static analysis tool used for oVirt code base? There is interesting tool called Sonar: http://www.sonarqube.org/. It integrates with Jenkins and provides you neat dashboard that will let you understand code quality. This tool supports many languages including Java and Python. Thanks, Piotr Kliczewski

------=_Part_125389_1744225563.1380471806324 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit Hi Piotr, Currently, we employ several static analysis tools in the various oVirt projects. In oVirt-Engine: 1. We use checkstyle at build time with several standard checks, and a couple implemented by project members 2. FindBugs is run by a Jenkins job: http://jenkins.ovirt.org/view/All/job/ovirt_engine_find_bugs/ 3. Animal Sniffer is used to ensure we don't break JDK6 compatibility on GWT-compiled modules (should probably be removed since the last GWT upgrade, BTW), also as a Jenkins job: http://jenkins.ovirt.org/job/ovirt_engine_animal_sniffer_check/ 4. pylint is used to check the python parts: http://jenkins.ovirt.org/view/ovirt_engine/job/ovirt_engine_pylint_gerrit/ In VDSM, we use pep8 as part of the build. Personally, I've heard about Sonar Qube, but never used it. Can you share some experience? How much "noise" does it produce? -Allon ----- Original Message -----
From: "Piotr Kliczewski" <piotr.kliczewski@gmail.com> To: infra@ovirt.org Sent: Sunday, September 29, 2013 7:00:58 PM Subject: Static analysis for oVirt
All,
Is there static analysis tool used for oVirt code base?
There is interesting tool called Sonar: http://www.sonarqube.org/ . It integrates with Jenkins and provides you neat dashboard that will let you understand code quality. This tool supports many languages including Java and Python.
Thanks, Piotr Kliczewski
_______________________________________________ Infra mailing list Infra@ovirt.org http://lists.ovirt.org/mailman/listinfo/infra
------=_Part_125389_1744225563.1380471806324 Content-Type: text/html; charset=utf-8 Content-Transfer-Encoding: quoted-printable <html><body><div style=3D"font-family: times new roman, new york, times, se= rif; font-size: 12pt; color: #000000"><div>Hi Piotr,</div><div><br></div><d= iv>Currently, we employ several static analysis tools in the various oVirt = projects.</div><div><br></div><div>In oVirt-Engine:</div><div>1. We use che= ckstyle at build time with several standard checks, and a couple implemente= d by project members</div><div>2. FindBugs is run by a Jenkins job: <a= href=3D"http://jenkins.ovirt.org/view/All/job/ovirt_engine_find_bugs/" dat= a-mce-href=3D"http://jenkins.ovirt.org/view/All/job/ovirt_engine_find_bugs/= ">http://jenkins.ovirt.org/view/All/job/ovirt_engine_find_bugs/</a></div><d= iv>3. Animal Sniffer is used to ensure we don't break JDK6 compatibility on= GWT-compiled modules (should probably be removed since the last GWT upgrad= e, BTW), also as a Jenkins job: <a href=3D"http://jenkins.ovirt.org/jo= b/ovirt_engine_animal_sniffer_check/" data-mce-href=3D"http://jenkins.ovirt= .org/job/ovirt_engine_animal_sniffer_check/">http://jenkins.ovirt.org/job/o= virt_engine_animal_sniffer_check/</a></div><div>4. pylint is used to check = the python parts: <a href=3D"http://jenkins.ovirt.org/view/ovirt_engin= e/job/ovirt_engine_pylint_gerrit/" data-mce-href=3D"http://jenkins.ovirt.or= g/view/ovirt_engine/job/ovirt_engine_pylint_gerrit/">http://jenkins.ovirt.o= rg/view/ovirt_engine/job/ovirt_engine_pylint_gerrit/</a></div><div><br></di= v><div>In VDSM, we use pep8 as part of the build.</div><div><br></div><div>= Personally, I've heard about Sonar Qube, but never used it.</div><div>Can y= ou share some experience?</div><div>How much "noise" does it produce?</div>= <div><br></div><div>-Allon</div><div><br></div><hr id=3D"zwchr"><blockquote= style=3D"border-left:2px solid #1010FF;margin-left:5px;padding-left:5px;co= lor:#000;font-weight:normal;font-style:normal;text-decoration:none;font-fam= ily:Helvetica,Arial,sans-serif;font-size:12pt;"><b>From: </b>"Piotr Kliczew= ski" <piotr.kliczewski@gmail.com><br><b>To: </b>infra@ovirt.org<br><b=
Sent: </b>Sunday, September 29, 2013 7:00:58 PM<br><b>Subject: </b>Static = analysis for oVirt<br><div><br></div><div dir=3D"ltr">All,<div><br></div><d= iv>Is there static analysis tool used for oVirt code base? </div><div>= <br></div><div>There is interesting tool called Sonar: <a href=3D"http://ww= w.sonarqube.org/" target=3D"_blank">http://www.sonarqube.org/</a>. It integ= rates with Jenkins and provides you neat dashboard that will let you unders= tand code quality. This tool supports many languages including Java and Pyt= hon.</div> <div><br></div><div>Thanks,</div><div>Piotr Kliczewski</div></div> <br>_______________________________________________<br>Infra mailing list<b= r>Infra@ovirt.org<br>http://lists.ovirt.org/mailman/listinfo/infra<br></blo= ckquote><div><br></div></div></body></html> ------=_Part_125389_1744225563.1380471806324--

Allon, Sonar is similar to findbugs but it gives you code duplication, complexity, coverage and help you understand how metrics change over the time. There is a bit "noise" with default configuration but it can be nicely tuned: http://www.sonarqube.org/screencasts/configuring-coding-rules/ you can run it together with your Jenkins build by using: https://wiki.jenkins-ci.org/display/JENKINS/Sonar+plugin I used it in the past with Java code and I can say it gives good understanding of the code quality. I can help to set it up for one or more projects if there is a will to experiment. Thanks, Piotr On Sun, Sep 29, 2013 at 6:23 PM, Allon Mureinik <amureini@redhat.com> wrote:
Hi Piotr,
Currently, we employ several static analysis tools in the various oVirt projects.
In oVirt-Engine: 1. We use checkstyle at build time with several standard checks, and a couple implemented by project members 2. FindBugs is run by a Jenkins job: http://jenkins.ovirt.org/view/All/job/ovirt_engine_find_bugs/ 3. Animal Sniffer is used to ensure we don't break JDK6 compatibility on GWT-compiled modules (should probably be removed since the last GWT upgrade, BTW), also as a Jenkins job: http://jenkins.ovirt.org/job/ovirt_engine_animal_sniffer_check/ 4. pylint is used to check the python parts: http://jenkins.ovirt.org/view/ovirt_engine/job/ovirt_engine_pylint_gerrit/
In VDSM, we use pep8 as part of the build.
Personally, I've heard about Sonar Qube, but never used it. Can you share some experience? How much "noise" does it produce?
-Allon
------------------------------
*From: *"Piotr Kliczewski" <piotr.kliczewski@gmail.com> *To: *infra@ovirt.org *Sent: *Sunday, September 29, 2013 7:00:58 PM *Subject: *Static analysis for oVirt
All,
Is there static analysis tool used for oVirt code base?
There is interesting tool called Sonar: http://www.sonarqube.org/. It integrates with Jenkins and provides you neat dashboard that will let you understand code quality. This tool supports many languages including Java and Python.
Thanks, Piotr Kliczewski
_______________________________________________ Infra mailing list Infra@ovirt.org http://lists.ovirt.org/mailman/listinfo/infra

There is also a coverity analysis job running on jenkins upstream http://jenkins.ovirt.org/job/coverity_analysis/ ----- Original Message -----
From: "Piotr Kliczewski" <piotr.kliczewski@gmail.com> To: "Allon Mureinik" <amureini@redhat.com> Cc: infra@ovirt.org Sent: Sunday, September 29, 2013 9:04:09 PM Subject: Re: Static analysis for oVirt
Allon,
Sonar is similar to findbugs but it gives you code duplication, complexity, coverage and help you understand how metrics change over the time. There is a bit "noise" with default configuration but it can be nicely tuned: http://www.sonarqube.org/screencasts/configuring-coding-rules/ you can run it together with your Jenkins build by using: https://wiki.jenkins-ci.org/display/JENKINS/Sonar+plugin
I used it in the past with Java code and I can say it gives good understanding of the code quality. I can help to set it up for one or more projects if there is a will to experiment.
Thanks, Piotr
On Sun, Sep 29, 2013 at 6:23 PM, Allon Mureinik < amureini@redhat.com > wrote:
Hi Piotr,
Currently, we employ several static analysis tools in the various oVirt projects.
In oVirt-Engine: 1. We use checkstyle at build time with several standard checks, and a couple implemented by project members 2. FindBugs is run by a Jenkins job: http://jenkins.ovirt.org/view/All/job/ovirt_engine_find_bugs/ 3. Animal Sniffer is used to ensure we don't break JDK6 compatibility on GWT-compiled modules (should probably be removed since the last GWT upgrade, BTW), also as a Jenkins job: http://jenkins.ovirt.org/job/ovirt_engine_animal_sniffer_check/ 4. pylint is used to check the python parts: http://jenkins.ovirt.org/view/ovirt_engine/job/ovirt_engine_pylint_gerrit/
In VDSM, we use pep8 as part of the build.
Personally, I've heard about Sonar Qube, but never used it. Can you share some experience? How much "noise" does it produce?
-Allon
From: "Piotr Kliczewski" < piotr.kliczewski@gmail.com > To: infra@ovirt.org Sent: Sunday, September 29, 2013 7:00:58 PM Subject: Static analysis for oVirt
All,
Is there static analysis tool used for oVirt code base?
There is interesting tool called Sonar: http://www.sonarqube.org/ . It integrates with Jenkins and provides you neat dashboard that will let you understand code quality. This tool supports many languages including Java and Python.
Thanks, Piotr Kliczewski
_______________________________________________ Infra mailing list Infra@ovirt.org http://lists.ovirt.org/mailman/listinfo/infra
_______________________________________________ Infra mailing list Infra@ovirt.org http://lists.ovirt.org/mailman/listinfo/infra
participants (3)
-
Allon Mureinik
-
Ohad Basan
-
Piotr Kliczewski