-
New Feature
-
Resolution: Not A Defect
-
Minor
-
None
-
Centos 7 64 bit
Jenkins ver. 2.46
Plugins
Name ↓
Version
Enabled
ace-editor 1.1 true
analysis-collector 1.50 true
analysis-core 1.82 true
ant 1.4 true
antisamy-markup-formatter 1.5 true
authentication-tokens 1.3 true
bouncycastle-api 2.16.0 true
brakeman 0.8 true
branch-api 2.0.6 true
build-pipeline-plugin 1.5.6 true
build-timeout 1.18 true
checkstyle 3.47 true
cloudbees-folder 5.17 true
conditional-buildstep 1.3.5 true
credentials 2.1.11 true
credentials-binding 1.10 true
dashboard-view 2.9.10 true
display-url-api 1.1.1 true
docker-commons 1.6 true
docker-workflow 1.10 true
durable-task 1.13 true
email-ext 2.56 true
external-monitor-job 1.7 true
flexible-publish 0.15.2 true
git 3.0.5 true
git-client 2.2.1 true
git-server 1.7 true
github 1.26.0 true
github-api 1.84 true
github-branch-source 2.0.3 true
github-organization-folder 1.6 true
gradle 1.26 true
groovy-postbuild 2.3.1 true
handlebars 1.1.1 true
htmlpublisher 1.12 true
icon-shim 2.0.3 true
javadoc 1.4 true
jquery 1.11.2-0 true
jquery-detached 1.2.1 true
junit 1.20 true
ldap 1.14 true
mailer 1.19 true
mapdb-api 1.0.9.0 true
matrix-auth 1.4 true
matrix-project 1.8 true
maven-plugin 2.14 true
momentjs 1.1.1 true
pam-auth 1.3 true
parallel-test-executor 1.9 true
parameterized-trigger 2.32 true
pipeline-build-step 2.4 true
pipeline-github-lib 1.0 true
pipeline-graph-analysis 1.3 true
pipeline-input-step 2.5 true
pipeline-milestone-step 1.3 true
pipeline-model-api 1.0.1 true
pipeline-model-declarative-agent 1.0.1 true
pipeline-model-definition 1.0.1 true
pipeline-rest-api 2.5 true
pipeline-stage-step 2.2 true
pipeline-stage-tags-metadata 1.0.1 true
pipeline-stage-view 2.5 true
plain-credentials 1.4 true
postbuild-task 1.8 true
postbuildscript 0.17 true
rake 1.8.0 true
resource-disposer 0.6 true
role-strategy 2.3.2 true
ruby-runtime 0.13 true
rubyMetrics 1.6.5 true
run-condition 1.0 true
scm-api 2.0.4 true
script-security 1.26 true
sidebar-link 1.7 true
ssh-credentials 1.13 true
ssh-slaves 1.13 true
structs 1.6 true
subversion 2.7.1 true
timestamper 1.8.8 true
token-macro 2.0 true
violation-columns 1.6 true
violations 0.7.11 true
warnings 4.59 true
windows-slaves 1.2 true
workflow-aggregator 2.5 true
workflow-api 2.11 true
workflow-basic-steps 2.4 true
workflow-cps 2.27 true
workflow-cps-global-lib 2.6 true
workflow-durable-task-step 2.9 true
workflow-job 2.10 true
workflow-multibranch 2.12 true
workflow-scm-step 2.3 true
workflow-step-api 2.9 true
workflow-support 2.13 true
ws-cleanup 0.32 true
java.runtime.version 1.8.0_121-b13
java.specification.name Java Platform API Specification
java.specification.vendor Oracle Corporation
java.specification.version 1.8
java.vendor Oracle Corporation
java.vendor.url http://java.oracle.com/
java.vendor.url.bug http://bugreport.sun.com/bugreport/
java.version 1.8.0_121
java.vm.info mixed mode
java.vm.name OpenJDK 64-Bit Server VM
java.vm.specification.name Java Virtual Machine Specification
java.vm.specification.vendor Oracle Corporation
java.vm.specification.version 1.8
java.vm.vendor Oracle Corporation
java.vm.version 25.121-b13
JENKINS_HOME /var/lib/jenkins
jna.loaded true
jna.platform.library.path /usr/lib64:/lib64:/usr/lib:/lib:/usr/pgsql-9.4/lib:/usr/lib64/mysql:/usr/lib64/R/lib
jnidispatch.path /tmp/jna--1712433994/jna5763925103582871955.tmp
line.separator
mail.smtp.sendpartial true
mail.smtps.sendpartial true
os.arch amd64
os.name Linux
os.version 3.10.0-327.36.3.el7.x86_64
path.separator :
sun.arch.data.model 64Centos 7 64 bit Jenkins ver. 2.46 Plugins Name ↓ Version Enabled ace-editor 1.1 true analysis-collector 1.50 true analysis-core 1.82 true ant 1.4 true antisamy-markup-formatter 1.5 true authentication-tokens 1.3 true bouncycastle-api 2.16.0 true brakeman 0.8 true branch-api 2.0.6 true build-pipeline-plugin 1.5.6 true build-timeout 1.18 true checkstyle 3.47 true cloudbees-folder 5.17 true conditional-buildstep 1.3.5 true credentials 2.1.11 true credentials-binding 1.10 true dashboard-view 2.9.10 true display-url-api 1.1.1 true docker-commons 1.6 true docker-workflow 1.10 true durable-task 1.13 true email-ext 2.56 true external-monitor-job 1.7 true flexible-publish 0.15.2 true git 3.0.5 true git-client 2.2.1 true git-server 1.7 true github 1.26.0 true github-api 1.84 true github-branch-source 2.0.3 true github-organization-folder 1.6 true gradle 1.26 true groovy-postbuild 2.3.1 true handlebars 1.1.1 true htmlpublisher 1.12 true icon-shim 2.0.3 true javadoc 1.4 true jquery 1.11.2-0 true jquery-detached 1.2.1 true junit 1.20 true ldap 1.14 true mailer 1.19 true mapdb-api 1.0.9.0 true matrix-auth 1.4 true matrix-project 1.8 true maven-plugin 2.14 true momentjs 1.1.1 true pam-auth 1.3 true parallel-test-executor 1.9 true parameterized-trigger 2.32 true pipeline-build-step 2.4 true pipeline-github-lib 1.0 true pipeline-graph-analysis 1.3 true pipeline-input-step 2.5 true pipeline-milestone-step 1.3 true pipeline-model-api 1.0.1 true pipeline-model-declarative-agent 1.0.1 true pipeline-model-definition 1.0.1 true pipeline-rest-api 2.5 true pipeline-stage-step 2.2 true pipeline-stage-tags-metadata 1.0.1 true pipeline-stage-view 2.5 true plain-credentials 1.4 true postbuild-task 1.8 true postbuildscript 0.17 true rake 1.8.0 true resource-disposer 0.6 true role-strategy 2.3.2 true ruby-runtime 0.13 true rubyMetrics 1.6.5 true run-condition 1.0 true scm-api 2.0.4 true script-security 1.26 true sidebar-link 1.7 true ssh-credentials 1.13 true ssh-slaves 1.13 true structs 1.6 true subversion 2.7.1 true timestamper 1.8.8 true token-macro 2.0 true violation-columns 1.6 true violations 0.7.11 true warnings 4.59 true windows-slaves 1.2 true workflow-aggregator 2.5 true workflow-api 2.11 true workflow-basic-steps 2.4 true workflow-cps 2.27 true workflow-cps-global-lib 2.6 true workflow-durable-task-step 2.9 true workflow-job 2.10 true workflow-multibranch 2.12 true workflow-scm-step 2.3 true workflow-step-api 2.9 true workflow-support 2.13 true ws-cleanup 0.32 true java.runtime.version 1.8.0_121-b13 java.specification.name Java Platform API Specification java.specification.vendor Oracle Corporation java.specification.version 1.8 java.vendor Oracle Corporation java.vendor.url http://java.oracle.com/ java.vendor.url.bug http://bugreport.sun.com/bugreport/ java.version 1.8.0_121 java.vm.info mixed mode java.vm.name OpenJDK 64-Bit Server VM java.vm.specification.name Java Virtual Machine Specification java.vm.specification.vendor Oracle Corporation java.vm.specification.version 1.8 java.vm.vendor Oracle Corporation java.vm.version 25.121-b13 JENKINS_HOME /var/lib/jenkins jna.loaded true jna.platform.library.path /usr/lib64:/lib64:/usr/lib:/lib:/usr/pgsql-9.4/lib:/usr/lib64/mysql:/usr/lib64/R/lib jnidispatch.path /tmp/jna--1712433994/jna5763925103582871955.tmp line.separator mail.smtp.sendpartial true mail.smtps.sendpartial true os.arch amd64 os.name Linux os.version 3.10.0-327.36.3.el7.x86_64 path.separator : sun.arch.data.model 64
Hi all,
I seem to have hit a possible bug with using the Checkstyle plugin for a pipeline project.
I have checked that the plugins are all working OK for a freestyle project:
https://groups.google.com/forum/#!topic/jenkinsci-users/RMyO5zYDABM
(sorry for the cross post)
Now if I use the following for a pipeline version of the same project:
stage('RuboCop code analyzer') { node { sh '/var/lib/jenkins/ci-projects/test/build-scripts/run-rubocop-tests.sh' publishHTML(target: [ allowMissing: false, alwaysLinkToLastBuild: true, keepAll: true, reportDir: '/var/lib/jenkins/ci-projects/test/build-reports/', reportFiles: 'rubocop-index.html', reportName: 'RuboCop HTML Report' ]) } } stage('Scan for Rubocop compiler Warnings') { node { step([$class: 'WarningsPublisher', canResolveRelativePaths: false, consoleParsers: [[parserName: 'Rubocop']], defaultEncoding: '', excludePattern: '', healthy: '', includePattern: '', messagesPattern: '', unHealthy: '', useStableBuildAsReference: true ]) } } stage('Rubocop CheckStyle Publisher') { node { step([$class: 'CheckStylePublisher', canRunOnFailed: true, defaultEncoding: '', healthy: '', pattern: '', unHealthy: '', useStableBuildAsReference: true ]) } }
When I do a build of the project, I get the following in the console output:
[CHECKSTYLE] Collecting checkstyle analysis files...
[CHECKSTYLE] Finding all files that match the pattern **/checkstyle-result.xml
[CHECKSTYLE] Computing warning deltas based on reference build #95
[Pipeline] }
[Pipeline] // node
[Pipeline] }
[Pipeline] // stage
[Pipeline] End of Pipeline
Finished: SUCCESS
Now if I click on the build number, I see the following:
Checkstyle: 0 warnings.
No warnings since build 1.
New zero warnings highscore: no warnings for 71 days!
During parsing an error has been reported.
So if I click on the error link I get the following message:
Errors
No report files were found. Configuration error?
Yet the build logs tell me that checkstyle has found the report file above.
Have i missed something here, such as a configuration parameter, or is this a possible bug?
Kind Regards,
Keith
Update:
If I compare the console output from the freestyle version of the project that generates the Checkstyle warnings OK, and the pipeline version of the same project I get these outputs:
Freestyle project console output
14:12:25 [CHECKSTYLE] Collecting checkstyle analysis files...
14:12:26 [CHECKSTYLE] Finding all files that match the pattern **/rubocop-checkstyle-result.xml
14:12:26 [CHECKSTYLE] Parsing 1 file in /var/lib/jenkins/workspace/test-freestyle
14:12:26 [CHECKSTYLE] Successfully parsed file /var/lib/jenkins/workspace/test-freestyle/rubocop-checkstyle-result.xml with 4177 unique warnings and 0 duplicates.
14:12:27 [CHECKSTYLE] Computing warning deltas based on reference build #65
Pipeline version console output
[CHECKSTYLE] Collecting checkstyle analysis files...
[CHECKSTYLE] Finding all files that match the pattern **/checkstyle-result.xml
[CHECKSTYLE] Computing warning deltas based on reference build #98
So it looks like the pipeline version is NOT parsing the xml output file - but the freestyle version is.
What do I need to do to make the pipeline version parse the said file please?
That would be a great help for debugging purposes if that's not too much trouble please.