Last modified: 2013-06-17 14:33:19 UTC
The Violation plugin interprets the checkstyle XLM or pep8 output and generate a report out of it. As an example, we run pep8 on operations/puppet.git using the operations-puppet-pep8 job. The build report is properly generated and show the list of files having errors: https://integration.mediawiki.org/ci/job/operations-puppet-pep8/541/violations/? Each file has its own detailed report but it show an empty list: https://integration.mediawiki.org/ci/job/operations-puppet-pep8/541/violations/file/files/ganglia/plugins/mysql.py/? /!\ files/ganglia/plugins/mysql.py No violations found While accessing the per file report, I have ran strace to log Jenkins stat() calls : [pid 4220] stat("/run/jenkins/war/job/operations-puppet-pep8/541/violations/file/files/ganglia/plugins/mysql.py", 0x7f4b3044edb0) = -1 ENOENT (No such file or directory) [pid 4220] stat("/run/jenkins/war/job/operations-puppet-pep8/541/violations/file/files/ganglia/plugins/mysql.py", 0x7f4b3044edb0) = -1 ENOENT (No such file or directory) The XML output is in the build directory at: /var/lib/jenkins/jobs/operations-puppet-pep8/builds/541/violations/file/files/ganglia/plugins/mysql.py.xml
Ccing Timo who reported the issue yesterday.
Possible issue # at upstream: https://github.com/jenkinsci/violations-plugin/issues/17
See also: https://issues.jenkins-ci.org/browse/JENKINS-14291 https://groups.google.com/forum/#!topic/jenkinsci-users/cUfZimHHXqs
Possible fix somewhere under https://github.com/alxndrsn/jenkins-violations-plugin/commits/master
Interestingly, when setting up a checkstyle type publisher for CodeSniffer, the report are showing just fine: https://integration.mediawiki.org/ci/job/mediawiki-core-phpcs-HEAD/3/violations/file/maintenance/eval.php/ (or look at https://integration.mediawiki.org/ci/job/mediawiki-core-phpcs-HEAD/violations/? ) The upstream bug https://github.com/plone/buildout.jenkins/issues/11 mentionned: It works for cpd and pep8, but not for csslint or jshint/jslint. And https://github.com/jenkinsci/violations-plugin/issues/17#issuecomment-10413902 shows up that each type as different ways to find out the filename. I guess checkstyle is fine for now and this bug is all about pep8 reports. Slightly rephrased this bug subject to mentions this apply to pep8
Apparently has been fixed somehow. https://gerrit.wikimedia.org/r/#/c/68653/ had a pep8 issue. The build is https://integration.wikimedia.org/ci/job/operations-puppet-pep8/3646/violations/? and the per file report is available: https://integration.wikimedia.org/ci/job/operations-puppet-pep8/3646/violations/file/modules/varnish/files/ganglia/ganglia-varnish.py/?