SSL invalid handshake issue
I am using the P4 plugin for Jenkins, I had this SSL invalid handshake issue before which I sorted by starting jenkins (I am running Jenkins through the war file on Windows 10) with the following command " java -DsecureSocketEnabledProtocols=TLSv1 -jar jenkins.war" but it does not seem to be working on a new machine I just setup with Jenkins. I remember changing something on the jenkins.xml file, but I think I was using jenkins as a windows service by that time and I am unable to find that file on my whole system. I am using Jenkins 2.289.2 and P4 plugin 1.11.5. Any hints / help would be greatly appreciated. Thanks -- You received this message because you are subscribed to the Google Groups "Jenkins Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-users+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-users/b0eafb65-9fda-435e-b0fe-06989cbf610en%40googlegroups.com.
how to use publish-over-dropbox plugin
I am using Jenkins 2.299, I am trying to use the publish-over-dropbox(latest version) plugin for jenkins for the first time, but when I try to create the credentials using the kind Dropbox api token, I generate it and copy paste it to the token field, but then I get an ```A problem occurred while processing the request. Logging ID=a615b9e8-c399-44d3-866a-5e7a71cb9a3e``` error and I get logout. Then I get a neverending callstack, this is the few first lines ``` 2021-06-29 19:16:57.599+ [id=15]WARNING hudson.security.csrf.CrumbFilter#doFilter: Found invalid crumb 2125f052b3c77f4a957e7b456a7ca37ca80fdd36dcc7a1988fb238cf721f6fb4. If you are calling this URL with a script, please use the API Token instead. More information: https://www.jenkins.io/redirect/crumb-cannot-be-used-for-script 2021-06-29 19:16:57.599+ [id=15]WARNING hudson.security.csrf.CrumbFilter#doFilter: No valid crumb was included in request for /credentials/store/system/domain/_/createCredentials by jesus. Returning 403. 2021-06-29 19:17:06.152+ [id=75]WARNING o.e.j.s.h.ContextHandler$Context#log: Error while serving http://localhost:8080/credentials/store/system/domain/_/createCredentials java.io.IOException: HTTP 400 error Bad Request Caused: java.io.IOException: {"error_description": "code doesn't exist or has expired", "error": "invalid_grant"} at org.jenkinsci.plugins.publishoverdropbox.domain.JsonObjectRequest.execute(JsonObjectRequest.java:181) at org.jenkinsci.plugins.publishoverdropbox.domain.DropboxV2.readAccessTokenFromWeb(DropboxV2.java:576) Caused: org.jenkinsci.plugins.publishoverdropbox.domain.model.RestException: Error when retrieving access token from Dropbox at org.jenkinsci.plugins.publishoverdropbox.domain.DropboxV2.readAccessTokenFromWeb(DropboxV2.java:578) at org.jenkinsci.plugins.publishoverdropbox.domain.DropboxV2.convertAuthorizationToAccessCode(DropboxV2.java:544) at org.jenkinsci.plugins.publishoverdropbox.impl.DropboxTokenImpl.(DropboxTokenImpl.java:53) Caused: java.io.IOException: Error when retrieving access token from Dropbox at org.jenkinsci.plugins.publishoverdropbox.impl.DropboxTokenImpl.(DropboxTokenImpl.java:55) at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source) at java.lang.reflect.Constructor.newInstance(Unknown Source) at org.kohsuke.stapler.RequestImpl.invokeConstructor(RequestImpl.java:541) Caused: java.lang.IllegalArgumentException at org.kohsuke.stapler.RequestImpl.invokeConstructor(RequestImpl.java:556) at org.kohsuke.stapler.RequestImpl.instantiate(RequestImpl.java:805) at org.kohsuke.stapler.RequestImpl.access$200(RequestImpl.java:85) at org.kohsuke.stapler.RequestImpl$TypePair.convertJSON(RequestImpl.java:690) ``` I have no idea what is causing this, if the plugin is not working or I am doing something wrong -- You received this message because you are subscribed to the Google Groups "Jenkins Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-users+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-users/7c1bbf4f-73ec-4964-8f18-029e934f6c41n%40googlegroups.com.
Re: how can I iterate a json with a list of objects in a pipeline?
Thanks it works now! El lunes, 19 de abril de 2021 a las 18:55:19 UTC+2, davidmic...@gmail.com escribió: > You're missing the most important value of what JsonSlurper (and similar > tools) provides. There is no reason to iterate maps, and it's important to > realize that there is no ordering guarantee of map values. > > If you want to reference the "issues" property, just reference > "json.issues". You will need to iterate over the "json.issues" list, and > each of those objects should be "issue" objects, and if you need to > reference those particular properties, just reference "issue.type", > "issue.severity", et cetera. > > On Monday, April 19, 2021 at 9:23:27 AM UTC-7 jesusfern...@gmail.com > wrote: > >> I have a json object which I receive in my jenkins pipeline through a url >> and I parse it like this: >> ``` >> def url = 'http://localhost:8080/job/find_issues/22/cppcheck/all/api/json >> ' >> def json = new JsonSlurper().parseText( new URL(url).text ) >> >> ``` >> >> Which has this format >> ``` >> { >> "_class": "io.jenkins.plugins.analysis.core.restapi.ReportApi", >> "issues": [], >> "size": 100, >> "toString": "- (-): 100 issues (0 duplicates)" >> } >> ``` >> which can have a different number of issues inside the `issues` list, >> each of them having this structure: >> ``` >> { >> "addedAt": 0, >> "authorEmail": "-", >> "authorName": "-", >> "baseName": "stat_obj.cpp", >> "category": "", >> "columnEnd": 0, >> "columnStart": 0, >> "commit": "-", >> "description": "", >> "fileName": "D:/Source/Game/objects/stat_obj.cpp", >> "fingerprint": "D2CD3A23FB45D3A1F1C3CB8BE5241602", >> "lineEnd": 5592, >> "lineStart": 5592, >> "message": "Unmatched '('. Configuration: 'DEBUGMAPEXPLORATION'.", >> "moduleName": "", >> "origin": "cppcheck", >> "originName": "CPPCheck", >> "packageName": "-", >> "reference": "19", >> "severity": "HIGH", >> "toString": "D:/Source/Game/objects/stat_obj.cpp(5592,0): syntaxError: : >> Unmatched '('. Configuration: 'DEBUGMAPEXPLORATION'.", >> "type": "syntaxError" >> } >> ``` >> How can I access the Issues list and the iterate through each one of the >> issues and them through each of the issue keys? >> I have tried different ways, lastly I have this: >> ``` >> for (entry in json) { >> if(entry.key == "issues") >> { >> for (issue in entry.value) { >> entry.value.each{ key, value -> >> if (key == "fileName"){ >> errorsList.add(value) >> } >> if (key == "lineStart"){ >> errorsList.add(value) >> } >> if (key == "message"){ >> errorsList.add(value) >> } >> if (key == "severity"){ >> errorsList.add(value) >> } >> if (key == "type"){ >> errorsList.add(value) >> } >> def msg = "New ERROR found in static analysis, TYPE OF >> ERROR ${errorsList[4]}, SEVERITY: ${errorsList[3]}, ERROR MESSAGE: >> ${errorsList[2]}, FILE ${errorsList[0]} AT LINE: ${errorsList[1]}" >> println msg >> errorsList.clear() >> } >> } >> } >> } >> ``` >> But when I call print `msg` I have something like this: >> ``` >> 17:13:09 New ERROR found in static analysis, TYPE OF ERROR null, >> SEVERITY: null, ERROR MESSAGE: null, FILE null AT LINE: null >> ``` >> It seems like I am over iterating but I do not get to see where is the >> mistake... >> > -- You received this message because you are subscribed to the Google Groups "Jenkins Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-users+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-users/d1d4c5eb-a8ca-450d-9d9c-7a49d8ddc803n%40googlegroups.com.
how can I iterate a json with a list of objects in a pipeline?
I have a json object which I receive in my jenkins pipeline through a url and I parse it like this: ``` def url = 'http://localhost:8080/job/find_issues/22/cppcheck/all/api/json' def json = new JsonSlurper().parseText( new URL(url).text ) ``` Which has this format ``` { "_class": "io.jenkins.plugins.analysis.core.restapi.ReportApi", "issues": [], "size": 100, "toString": "- (-): 100 issues (0 duplicates)" } ``` which can have a different number of issues inside the `issues` list, each of them having this structure: ``` { "addedAt": 0, "authorEmail": "-", "authorName": "-", "baseName": "stat_obj.cpp", "category": "", "columnEnd": 0, "columnStart": 0, "commit": "-", "description": "", "fileName": "D:/Source/Game/objects/stat_obj.cpp", "fingerprint": "D2CD3A23FB45D3A1F1C3CB8BE5241602", "lineEnd": 5592, "lineStart": 5592, "message": "Unmatched '('. Configuration: 'DEBUGMAPEXPLORATION'.", "moduleName": "", "origin": "cppcheck", "originName": "CPPCheck", "packageName": "-", "reference": "19", "severity": "HIGH", "toString": "D:/Source/Game/objects/stat_obj.cpp(5592,0): syntaxError: : Unmatched '('. Configuration: 'DEBUGMAPEXPLORATION'.", "type": "syntaxError" } ``` How can I access the Issues list and the iterate through each one of the issues and them through each of the issue keys? I have tried different ways, lastly I have this: ``` for (entry in json) { if(entry.key == "issues") { for (issue in entry.value) { entry.value.each{ key, value -> if (key == "fileName"){ errorsList.add(value) } if (key == "lineStart"){ errorsList.add(value) } if (key == "message"){ errorsList.add(value) } if (key == "severity"){ errorsList.add(value) } if (key == "type"){ errorsList.add(value) } def msg = "New ERROR found in static analysis, TYPE OF ERROR ${errorsList[4]}, SEVERITY: ${errorsList[3]}, ERROR MESSAGE: ${errorsList[2]}, FILE ${errorsList[0]} AT LINE: ${errorsList[1]}" println msg errorsList.clear() } } } } ``` But when I call print `msg` I have something like this: ``` 17:13:09 New ERROR found in static analysis, TYPE OF ERROR null, SEVERITY: null, ERROR MESSAGE: null, FILE null AT LINE: null ``` It seems like I am over iterating but I do not get to see where is the mistake... -- You received this message because you are subscribed to the Google Groups "Jenkins Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-users+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-users/7e05e337-ce69-403c-a807-629edf41b838n%40googlegroups.com.
Re: how to access all classes and methods of a plugin in jenkins pipeline?
Yes I will do so El miércoles, 14 de abril de 2021 a las 21:00:34 UTC+2, ullrich...@gmail.com escribió: > Can you please file a bug report for the warnings plugin, it seems > something broken in my build... > > Am 14.04.2021 um 18:55 schrieb jesus fernandez : > > yes all the other plugins I have checked so far have a woeking javadoc > > El mié., 14 abr. 2021 18:20, Ullrich Hafner > escribió: > >> I publish one, but never looked at the results. Does that work for other >> plugins? >> >> Am 13.04.2021 um 13:32 schrieb jesus fernandez : >> >> is there a javadoc for warnings-ng plugin? or just the github? I get a >> 404 when accesing the warnings-ng javadoc >> >> El lunes, 12 de abril de 2021 a las 14:28:33 UTC+2, ullrich...@gmail.com >> escribió: >> >>> In the source code in GitHub? >>> >>> You can also look for methods annotated with ExportedBean. >>> >>> Am 12.04.2021 um 10:16 schrieb jesus fernandez : >>> >>> >>> where can I see that? in the javadoc I do not see any method with that >>> annotation, thoug I could use the getResults() with no problems >>> El domingo, 11 de abril de 2021 a las 21:43:06 UTC+2, ullrich...@ >>> gmail.com escribió: >>> >>>> Due to security considerations only methods marked with @Whitelisted >>>> are accessible in Groovy scripts. Does your getter have such an annotation? >>>> >>>> Am 11.04.2021 um 19:02 schrieb jesus fernandez >>> >: >>>> >>>> I am a junior dev trying to lear about Jenkins, I have been learning on >>>> my own for a couple of months. Currently I have a pipeline (just for >>>> learning purposes) which runs static analysis on a folder, and then >>>> publish >>>> it, I have been able to send a report through email using jelly templates, >>>> from there I realized it is posbile to instantiate the classes of a plugin >>>> to use its methods so I went to the cppcheck javadoc here >>>> https://javadoc.jenkins.io/plugin/cppcheck/ and did some trial and >>>> error so I can get some values of my report and then do something else >>>> with >>>> them something, so I had something like this in my pipeline: >>>> ``` >>>> pipeline { >>>> agent any >>>> >>>> stages { >>>> stage('analysis') { >>>> steps { >>>> script{ >>>> bat'cppcheck "E:/My_project/Source/" --xml --xml-version=2 . 2> >>>> cppcheck.xml' >>>> } >>>>} >>>> } >>>> stage('Test'){ >>>> steps { >>>> script { >>>> publishCppcheck pattern:'cppcheck.xml' >>>> for (action in currentBuild.rawBuild.getActions()) { >>>> def name = action.getClass().getName() >>>> if (name == >>>> 'org.jenkinsci.plugins.cppcheck.CppcheckBuildAction') { >>>>def cppcheckaction = action >>>>def totalErrors = >>>> cppcheckaction.getResult().report.getNumberTotal() >>>>println totalErrors >>>>def warnings = >>>> cppcheckaction.getResult().statistics.getNumberWarningSeverity() >>>>println warnings >>>> } >>>> } >>>> } >>>> } >>>> } >>>> } >>>> >>>> } >>>> ``` >>>> which output is: >>>> ``` >>>> [Pipeline] echo >>>> 102 >>>> [Pipeline] echo >>>> 4 >>>> ``` >>>> >>>> My logic (wrongly) tells me that if I can access to the report and >>>> statistics classes like that and uses their methods getNumberTotal() and >>>> getNumberWarningSeverity() respectively, therefore I should be able to >>>> also >>>> access the ```DiffState``` class in the same way and use the >>>> ```valueOf()``` method to get an enum of the new errors. But adding this >>>> to >>>> my pipeline: >>>> ``` >>>> def nueva = cppcheckaction.getResult().diffState.valueOf(NEW) >>>> println nueva >>>> ``` >>>> Gives me an error: >>>> ``` >>>> org.jenkinsci.plugins.scriptsecurity.sandbox.RejectedAccessException: >>>> No such field found: field >>>> org.
Re: Can I send cppcheck results through slack in a jenkins pipeline?
Thanks it is working now, I am also wondering what is the tool-id when trying to access the details of the analysis result, explained here https://github.com/jenkinsci/warnings-ng-plugin/blob/master/doc/Documentation.md#summary-of-the-analysis-result I cannot find other reference to what tool id is. I guess each tool (in my case cppcheck) has an id for the plugin what I cannot finde which ID correspond to each tool El miércoles, 14 de abril de 2021 a las 20:57:21 UTC+2, ullrich...@gmail.com escribió: > You must wrap it into tm: see > https://github.com/jenkinsci/warnings-ng-plugin/blob/master/ui-tests/src/test/java/io/jenkins/plugins/analysis/warnings/SmokeTests.java#L99 > > > Am 13.04.2021 um 16:17 schrieb jesus fernandez : > > How can I access those token macros? (sorry if this is a silly question) I > have never used them before, I tried to print the value with ```println > ${ANALYSIS_ISSUES_COUNT, tool="cppcheck", type="NEW"}``` but I get an > unexpected token error > > El viernes, 9 de abril de 2021 a las 14:03:39 UTC+2, ullrich...@gmail.com > escribió: > >> >> https://github.com/jenkinsci/warnings-ng-plugin/blob/master/doc/Documentation.md#token-macro-support >> >> Am 09.04.2021 um 13:59 schrieb jesus fernandez : >> >> Thanks for replying, any documentation or link to guide me in the right >> direction on how to do it? I am quite Junior and have been learning Jenkins >> on my own >> >> El viernes, 9 de abril de 2021 a las 13:46:48 UTC+2, ullrich...@gmail.com >> escribió: >> >>> Exporting results from one plugin into another plugin is definitely >>> possible. You typically have two steps: >>> 1) Export the data from a producer plugin >>> a) using Tokens >>> b) using API methods of the plugin >>> 2) Import the data (or reformat and aggregate it) into a consumer plugin >>> >>> For step 1 I can say this works for the warnings plugin, it can export >>> the results of CppCheck either into tokens or into objects (that you can >>> process using your pipeline). >>> >>> I have no idea if the slack plugin is capable of doing step 2 though, >>> but I would assume that it works in that way... >>> >>> Am 09.04.2021 um 08:39 schrieb jesus fernandez : >>> >>> I just started using cppcheck, and I was wondering if there is any way >>> to access to the report values (for instance number of total errors) and >>> send it to slack. I have been searching in the documentation and here in SO >>> but I have found nothing, as I just have been using Jenkins for a couple of >>> months ( I am a junior dev) I was wondering if somebody know if this is >>> possible and could drive me in the right direction. >>> >>> -- >>> You received this message because you are subscribed to the Google >>> Groups "Jenkins Users" group. >>> To unsubscribe from this group and stop receiving emails from it, send >>> an email to jenkinsci-use...@googlegroups.com. >>> To view this discussion on the web visit >>> https://groups.google.com/d/msgid/jenkinsci-users/d3aee90e-5331-480f-84d7-4df7c3ebcf6fn%40googlegroups.com >>> >>> <https://groups.google.com/d/msgid/jenkinsci-users/d3aee90e-5331-480f-84d7-4df7c3ebcf6fn%40googlegroups.com?utm_medium=email&utm_source=footer> >>> . >>> >>> >>> >> -- >> You received this message because you are subscribed to the Google Groups >> "Jenkins Users" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to jenkinsci-use...@googlegroups.com. >> >> To view this discussion on the web visit >> https://groups.google.com/d/msgid/jenkinsci-users/abdfdbec-e2cf-4f69-a089-1cb93dcef30en%40googlegroups.com >> >> <https://groups.google.com/d/msgid/jenkinsci-users/abdfdbec-e2cf-4f69-a089-1cb93dcef30en%40googlegroups.com?utm_medium=email&utm_source=footer> >> . >> >> >> > -- > You received this message because you are subscribed to the Google Groups > "Jenkins Users" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to jenkinsci-use...@googlegroups.com. > > To view this discussion on the web visit > https://groups.google.com/d/msgid/jenkinsci-users/c5ba204c-fa9f-4f6c-800f-69dba9680f87n%40googlegroups.com > > <https://groups.google.com/d/msgid/jenkinsci-users/c5ba204c-fa9f-4f6c-800f-69dba9680f87n%40googlegroups.com?utm_medium=email&utm_source=footer> > . > > > -- You received this message because you are subscribed to the Google Groups "Jenkins Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-users+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-users/cc21e77e-8e16-4cac-9f6d-a79723d9b6c2n%40googlegroups.com.
Re: how to access all classes and methods of a plugin in jenkins pipeline?
yes all the other plugins I have checked so far have a woeking javadoc El mié., 14 abr. 2021 18:20, Ullrich Hafner escribió: > I publish one, but never looked at the results. Does that work for other > plugins? > > Am 13.04.2021 um 13:32 schrieb jesus fernandez < > jesusfernandez0...@gmail.com>: > > is there a javadoc for warnings-ng plugin? or just the github? I get a 404 > when accesing the warnings-ng javadoc > > El lunes, 12 de abril de 2021 a las 14:28:33 UTC+2, ullrich...@gmail.com > escribió: > >> In the source code in GitHub? >> >> You can also look for methods annotated with ExportedBean. >> >> Am 12.04.2021 um 10:16 schrieb jesus fernandez : >> >> >> where can I see that? in the javadoc I do not see any method with that >> annotation, thoug I could use the getResults() with no problems >> El domingo, 11 de abril de 2021 a las 21:43:06 UTC+2, ullrich...@ >> gmail.com escribió: >> >>> Due to security considerations only methods marked with @Whitelisted are >>> accessible in Groovy scripts. Does your getter have such an annotation? >>> >>> Am 11.04.2021 um 19:02 schrieb jesus fernandez : >>> >>> I am a junior dev trying to lear about Jenkins, I have been learning on >>> my own for a couple of months. Currently I have a pipeline (just for >>> learning purposes) which runs static analysis on a folder, and then publish >>> it, I have been able to send a report through email using jelly templates, >>> from there I realized it is posbile to instantiate the classes of a plugin >>> to use its methods so I went to the cppcheck javadoc here >>> https://javadoc.jenkins.io/plugin/cppcheck/ and did some trial and >>> error so I can get some values of my report and then do something else with >>> them something, so I had something like this in my pipeline: >>> ``` >>> pipeline { >>> agent any >>> >>> stages { >>> stage('analysis') { >>> steps { >>> script{ >>> bat'cppcheck "E:/My_project/Source/" --xml --xml-version=2 . 2> >>> cppcheck.xml' >>> } >>>} >>> } >>> stage('Test'){ >>> steps { >>> script { >>> publishCppcheck pattern:'cppcheck.xml' >>> for (action in currentBuild.rawBuild.getActions()) { >>> def name = action.getClass().getName() >>> if (name == >>> 'org.jenkinsci.plugins.cppcheck.CppcheckBuildAction') { >>>def cppcheckaction = action >>>def totalErrors = >>> cppcheckaction.getResult().report.getNumberTotal() >>>println totalErrors >>>def warnings = >>> cppcheckaction.getResult().statistics.getNumberWarningSeverity() >>>println warnings >>> } >>> } >>> } >>> } >>> } >>> } >>> >>> } >>> ``` >>> which output is: >>> ``` >>> [Pipeline] echo >>> 102 >>> [Pipeline] echo >>> 4 >>> ``` >>> >>> My logic (wrongly) tells me that if I can access to the report and >>> statistics classes like that and uses their methods getNumberTotal() and >>> getNumberWarningSeverity() respectively, therefore I should be able to also >>> access the ```DiffState``` class in the same way and use the >>> ```valueOf()``` method to get an enum of the new errors. But adding this to >>> my pipeline: >>> ``` >>> def nueva = cppcheckaction.getResult().diffState.valueOf(NEW) >>> println nueva >>> ``` >>> Gives me an error: >>> ``` >>> org.jenkinsci.plugins.scriptsecurity.sandbox.RejectedAccessException: No >>> such field found: field org.jenkinsci.plugins.cppcheck.CppcheckBuildAction >>> diffState >>> at >>> org.jenkinsci.plugins.scriptsecurity.sandbox.groovy.SandboxInterceptor.unclassifiedField( >>> SandboxInterceptor.java:425 <https://sandboxinterceptor.java:425/>) >>> at >>> org.jenkinsci.plugins.scriptsecurity.sandbox.groovy.SandboxInterceptor.onGetProperty( >>> SandboxInterceptor.java:409 <https://sandboxinterceptor.java:409/>) >>> ... >>> ``` >>> >>> -- >>> You received this message because you are subscribed to the Google >>> Groups "Jenkins Users" group. >>> To unsubscribe from this group and stop receiving emails from it, send >>> an email
Re: Can I send cppcheck results through slack in a jenkins pipeline?
How can I access those token macros? (sorry if this is a silly question) I have never used them before, I tried to print the value with ```println ${ANALYSIS_ISSUES_COUNT, tool="cppcheck", type="NEW"}``` but I get an unexpected token error El viernes, 9 de abril de 2021 a las 14:03:39 UTC+2, ullrich...@gmail.com escribió: > > https://github.com/jenkinsci/warnings-ng-plugin/blob/master/doc/Documentation.md#token-macro-support > > Am 09.04.2021 um 13:59 schrieb jesus fernandez : > > Thanks for replying, any documentation or link to guide me in the right > direction on how to do it? I am quite Junior and have been learning Jenkins > on my own > > El viernes, 9 de abril de 2021 a las 13:46:48 UTC+2, ullrich...@gmail.com > escribió: > >> Exporting results from one plugin into another plugin is definitely >> possible. You typically have two steps: >> 1) Export the data from a producer plugin >> a) using Tokens >> b) using API methods of the plugin >> 2) Import the data (or reformat and aggregate it) into a consumer plugin >> >> For step 1 I can say this works for the warnings plugin, it can export >> the results of CppCheck either into tokens or into objects (that you can >> process using your pipeline). >> >> I have no idea if the slack plugin is capable of doing step 2 though, but >> I would assume that it works in that way... >> >> Am 09.04.2021 um 08:39 schrieb jesus fernandez : >> >> I just started using cppcheck, and I was wondering if there is any way to >> access to the report values (for instance number of total errors) and send >> it to slack. I have been searching in the documentation and here in SO but >> I have found nothing, as I just have been using Jenkins for a couple of >> months ( I am a junior dev) I was wondering if somebody know if this is >> possible and could drive me in the right direction. >> >> -- >> You received this message because you are subscribed to the Google Groups >> "Jenkins Users" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to jenkinsci-use...@googlegroups.com. >> To view this discussion on the web visit >> https://groups.google.com/d/msgid/jenkinsci-users/d3aee90e-5331-480f-84d7-4df7c3ebcf6fn%40googlegroups.com >> >> <https://groups.google.com/d/msgid/jenkinsci-users/d3aee90e-5331-480f-84d7-4df7c3ebcf6fn%40googlegroups.com?utm_medium=email&utm_source=footer> >> . >> >> >> > -- > You received this message because you are subscribed to the Google Groups > "Jenkins Users" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to jenkinsci-use...@googlegroups.com. > > To view this discussion on the web visit > https://groups.google.com/d/msgid/jenkinsci-users/abdfdbec-e2cf-4f69-a089-1cb93dcef30en%40googlegroups.com > > <https://groups.google.com/d/msgid/jenkinsci-users/abdfdbec-e2cf-4f69-a089-1cb93dcef30en%40googlegroups.com?utm_medium=email&utm_source=footer> > . > > > -- You received this message because you are subscribed to the Google Groups "Jenkins Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-users+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-users/c5ba204c-fa9f-4f6c-800f-69dba9680f87n%40googlegroups.com.
Re: how to access all classes and methods of a plugin in jenkins pipeline?
is there a javadoc for warnings-ng plugin? or just the github? I get a 404 when accesing the warnings-ng javadoc El lunes, 12 de abril de 2021 a las 14:28:33 UTC+2, ullrich...@gmail.com escribió: > In the source code in GitHub? > > You can also look for methods annotated with ExportedBean. > > Am 12.04.2021 um 10:16 schrieb jesus fernandez : > > > where can I see that? in the javadoc I do not see any method with that > annotation, thoug I could use the getResults() with no problems > El domingo, 11 de abril de 2021 a las 21:43:06 UTC+2, ullrich...@gmail.com > escribió: > >> Due to security considerations only methods marked with @Whitelisted are >> accessible in Groovy scripts. Does your getter have such an annotation? >> >> Am 11.04.2021 um 19:02 schrieb jesus fernandez : >> >> I am a junior dev trying to lear about Jenkins, I have been learning on >> my own for a couple of months. Currently I have a pipeline (just for >> learning purposes) which runs static analysis on a folder, and then publish >> it, I have been able to send a report through email using jelly templates, >> from there I realized it is posbile to instantiate the classes of a plugin >> to use its methods so I went to the cppcheck javadoc here >> https://javadoc.jenkins.io/plugin/cppcheck/ and did some trial and error >> so I can get some values of my report and then do something else with them >> something, so I had something like this in my pipeline: >> ``` >> pipeline { >> agent any >> >> stages { >> stage('analysis') { >> steps { >> script{ >> bat'cppcheck "E:/My_project/Source/" --xml --xml-version=2 . 2> >> cppcheck.xml' >> } >>} >> } >> stage('Test'){ >> steps { >> script { >> publishCppcheck pattern:'cppcheck.xml' >> for (action in currentBuild.rawBuild.getActions()) { >> def name = action.getClass().getName() >> if (name == 'org.jenkinsci.plugins.cppcheck.CppcheckBuildAction') >> { >>def cppcheckaction = action >>def totalErrors = >> cppcheckaction.getResult().report.getNumberTotal() >>println totalErrors >>def warnings = >> cppcheckaction.getResult().statistics.getNumberWarningSeverity() >>println warnings >> } >> } >> } >> } >> } >> } >> >> } >> ``` >> which output is: >> ``` >> [Pipeline] echo >> 102 >> [Pipeline] echo >> 4 >> ``` >> >> My logic (wrongly) tells me that if I can access to the report and >> statistics classes like that and uses their methods getNumberTotal() and >> getNumberWarningSeverity() respectively, therefore I should be able to also >> access the ```DiffState``` class in the same way and use the >> ```valueOf()``` method to get an enum of the new errors. But adding this to >> my pipeline: >> ``` >> def nueva = cppcheckaction.getResult().diffState.valueOf(NEW) >> println nueva >> ``` >> Gives me an error: >> ``` >> org.jenkinsci.plugins.scriptsecurity.sandbox.RejectedAccessException: No >> such field found: field org.jenkinsci.plugins.cppcheck.CppcheckBuildAction >> diffState >> at >> org.jenkinsci.plugins.scriptsecurity.sandbox.groovy.SandboxInterceptor.unclassifiedField( >> SandboxInterceptor.java:425 <https://sandboxinterceptor.java:425/>) >> at >> org.jenkinsci.plugins.scriptsecurity.sandbox.groovy.SandboxInterceptor.onGetProperty( >> SandboxInterceptor.java:409 <https://sandboxinterceptor.java:409/>) >> ... >> ``` >> >> -- >> You received this message because you are subscribed to the Google Groups >> "Jenkins Users" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to jenkinsci-use...@googlegroups.com. >> To view this discussion on the web visit >> https://groups.google.com/d/msgid/jenkinsci-users/ca24b1f9-b0a8-4e81-8101-0b25f8267602n%40googlegroups.com >> >> <https://groups.google.com/d/msgid/jenkinsci-users/ca24b1f9-b0a8-4e81-8101-0b25f8267602n%40googlegroups.com?utm_medium=email&utm_source=footer> >> . >> >> >> > -- > You received this message because you are subscribed to the Google Groups > "Jenkins Users" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to jenkinsci-use...@googlegroups.com. > > To view this discussion on the web visit > https://groups.google.com/d/msgid/jenkinsci-users/9c65acbc-f199-4d99-8d96-0b37a44a4f2an%40googlegroups.com > > <https://groups.google.com/d/msgid/jenkinsci-users/9c65acbc-f199-4d99-8d96-0b37a44a4f2an%40googlegroups.com?utm_medium=email&utm_source=footer> > . > > > -- You received this message because you are subscribed to the Google Groups "Jenkins Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-users+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-users/b2fbf350-74c1-4109-a08d-8f1a0ef91d42n%40googlegroups.com.
Re: how to access all classes and methods of a plugin in jenkins pipeline?
where can I see that? in the javadoc I do not see any method with that annotation, thoug I could use the getResults() with no problems El domingo, 11 de abril de 2021 a las 21:43:06 UTC+2, ullrich...@gmail.com escribió: > Due to security considerations only methods marked with @Whitelisted are > accessible in Groovy scripts. Does your getter have such an annotation? > > Am 11.04.2021 um 19:02 schrieb jesus fernandez : > > I am a junior dev trying to lear about Jenkins, I have been learning on my > own for a couple of months. Currently I have a pipeline (just for learning > purposes) which runs static analysis on a folder, and then publish it, I > have been able to send a report through email using jelly templates, from > there I realized it is posbile to instantiate the classes of a plugin to > use its methods so I went to the cppcheck javadoc here > https://javadoc.jenkins.io/plugin/cppcheck/ and did some trial and error > so I can get some values of my report and then do something else with them > something, so I had something like this in my pipeline: > ``` > pipeline { > agent any > > stages { > stage('analysis') { > steps { > script{ > bat'cppcheck "E:/My_project/Source/" --xml --xml-version=2 . 2> > cppcheck.xml' > } >} > } > stage('Test'){ > steps { > script { > publishCppcheck pattern:'cppcheck.xml' > for (action in currentBuild.rawBuild.getActions()) { > def name = action.getClass().getName() > if (name == 'org.jenkinsci.plugins.cppcheck.CppcheckBuildAction') { >def cppcheckaction = action >def totalErrors = cppcheckaction.getResult().report.getNumberTotal() >println totalErrors >def warnings = > cppcheckaction.getResult().statistics.getNumberWarningSeverity() >println warnings > } > } > } > } > } > } > > } > ``` > which output is: > ``` > [Pipeline] echo > 102 > [Pipeline] echo > 4 > ``` > > My logic (wrongly) tells me that if I can access to the report and > statistics classes like that and uses their methods getNumberTotal() and > getNumberWarningSeverity() respectively, therefore I should be able to also > access the ```DiffState``` class in the same way and use the > ```valueOf()``` method to get an enum of the new errors. But adding this to > my pipeline: > ``` > def nueva = cppcheckaction.getResult().diffState.valueOf(NEW) > println nueva > ``` > Gives me an error: > ``` > org.jenkinsci.plugins.scriptsecurity.sandbox.RejectedAccessException: No > such field found: field org.jenkinsci.plugins.cppcheck.CppcheckBuildAction > diffState > at > org.jenkinsci.plugins.scriptsecurity.sandbox.groovy.SandboxInterceptor.unclassifiedField( > SandboxInterceptor.java:425 <https://sandboxinterceptor.java:425/>) > at > org.jenkinsci.plugins.scriptsecurity.sandbox.groovy.SandboxInterceptor.onGetProperty( > SandboxInterceptor.java:409 <https://sandboxinterceptor.java:409/>) > ... > ``` > > -- > You received this message because you are subscribed to the Google Groups > "Jenkins Users" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to jenkinsci-use...@googlegroups.com. > To view this discussion on the web visit > https://groups.google.com/d/msgid/jenkinsci-users/ca24b1f9-b0a8-4e81-8101-0b25f8267602n%40googlegroups.com > > <https://groups.google.com/d/msgid/jenkinsci-users/ca24b1f9-b0a8-4e81-8101-0b25f8267602n%40googlegroups.com?utm_medium=email&utm_source=footer> > . > > > -- You received this message because you are subscribed to the Google Groups "Jenkins Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-users+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-users/9c65acbc-f199-4d99-8d96-0b37a44a4f2an%40googlegroups.com.
how to access all classes and methods of a plugin in jenkins pipeline?
I am a junior dev trying to lear about Jenkins, I have been learning on my own for a couple of months. Currently I have a pipeline (just for learning purposes) which runs static analysis on a folder, and then publish it, I have been able to send a report through email using jelly templates, from there I realized it is posbile to instantiate the classes of a plugin to use its methods so I went to the cppcheck javadoc here https://javadoc.jenkins.io/plugin/cppcheck/ and did some trial and error so I can get some values of my report and then do something else with them something, so I had something like this in my pipeline: ``` pipeline { agent any stages { stage('analysis') { steps { script{ bat'cppcheck "E:/My_project/Source/" --xml --xml-version=2 . 2> cppcheck.xml' } } } stage('Test'){ steps { script { publishCppcheck pattern:'cppcheck.xml' for (action in currentBuild.rawBuild.getActions()) { def name = action.getClass().getName() if (name == 'org.jenkinsci.plugins.cppcheck.CppcheckBuildAction') { def cppcheckaction = action def totalErrors = cppcheckaction.getResult().report.getNumberTotal() println totalErrors def warnings = cppcheckaction.getResult().statistics.getNumberWarningSeverity() println warnings } } } } } } } ``` which output is: ``` [Pipeline] echo 102 [Pipeline] echo 4 ``` My logic (wrongly) tells me that if I can access to the report and statistics classes like that and uses their methods getNumberTotal() and getNumberWarningSeverity() respectively, therefore I should be able to also access the ```DiffState``` class in the same way and use the ```valueOf()``` method to get an enum of the new errors. But adding this to my pipeline: ``` def nueva = cppcheckaction.getResult().diffState.valueOf(NEW) println nueva ``` Gives me an error: ``` org.jenkinsci.plugins.scriptsecurity.sandbox.RejectedAccessException: No such field found: field org.jenkinsci.plugins.cppcheck.CppcheckBuildAction diffState at org.jenkinsci.plugins.scriptsecurity.sandbox.groovy.SandboxInterceptor.unclassifiedField( SandboxInterceptor.java:425) at org.jenkinsci.plugins.scriptsecurity.sandbox.groovy.SandboxInterceptor.onGetProperty( SandboxInterceptor.java:409) ... ``` -- You received this message because you are subscribed to the Google Groups "Jenkins Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-users+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-users/ca24b1f9-b0a8-4e81-8101-0b25f8267602n%40googlegroups.com.
Re: is there a way to see all the available methods of a plugin in Jenkins?
I have also tried this `def action = it.getAction('org.jenkinsci.plugins.cppcheck.CppcheckBuildAction')` which is how the variable get instantiated in the jelly template but I get ` java.lang.NullPointerException: Cannot invoke method getAction() on null object ` I am kind of lost here... any help is much appreciated El viernes, 9 de abril de 2021 a las 16:05:31 UTC+2, jesus fernandez escribió: > But the object model of both is different, you need to choose the > correct one in the email template! > > Yes, that template I am using it with publishcpp at the moment but I am > not able to get the value of any of their properties within my pipeline > like if I try to echo to check its value I get an error > 'groovy.lang.MissingPropertyException: No such property: cppcheckResult for > class: groovy.lang.Binding' so I am stuck trying to get the total number of > errors from each build > > El viernes, 9 de abril de 2021 a las 15:41:22 UTC+2, jesus fernandez > escribió: > >> but this is like god trying to explain something to a rock, I have just >> started in this world...hehehe >> >> El viernes, 9 de abril de 2021 a las 15:40:44 UTC+2, jesus fernandez >> escribió: >> >>> hahaha oh gosh I should have known I watched your video on youtube a few >>> days ago. >>> >>> El viernes, 9 de abril de 2021 a las 15:39:30 UTC+2, >>> ullrich...@gmail.com escribió: >>> >>>> >>>> >>>> I actually have tried both to publish the result, >>>> >>>> >>>> But the object model of both is different, you need to choose the >>>> correct one in the email template! >>>> >>>> have not decided which one to use yet, any suggestion? >>>> >>>> >>>> I am biased as I am the author of the warnings plugin ;-) >>>> >>>> I like the dashboard of the warnings-ng better, but I ilke from the >>>> publushcpp that you can see the line where the error is right from Jenkins >>>> without need to open the editor and look for the line... >>>> >>>> >>>> This could be done in the warnings plugin as well. >>>> Example: >>>> https://ci.jenkins.io/job/Plugins/job/analysis-model/job/master/1150/pmd/source.6e8cd82c-d953-4e48-9163-87d374ee6241/#32 >>>> >>>> >>>> El viernes, 9 de abril de 2021 a las 14:40:34 UTC+2, ullrich...@ >>>> gmail.com escribió: >>>> >>>>> First of all: are you using the warnings-ng plugin or the cppcheck >>>>> plugin in your build? They use different models. >>>>> >>>>> I’m not sure if there is an easy way to debug email ext templates in >>>>> the meantime, I am not using it actively. >>>>> But you can simply start with a subset of the script below and check >>>>> which values produce a result and which not. >>>>> >>>>> Am 09.04.2021 um 14:32 schrieb jesus fernandez >>>> >: >>>>> >>>>> my projects are in Perforce. What if I want to acces to one of those >>>>> properties which I know are available from looking at the jelly template, >>>>> for instance ${cppcheckResult.getDiff().getNumberNoCategorySeverity()} I >>>>> tried to echo that property but I get an error how could I access to it? >>>>> this is the jelly template I am using (I took it from SO) >>>>> >>>> xmlns:d="jelly:define"> >>>>> >>>>> >>>>> >>>> value="${it.getAction('org.jenkinsci.plugins.cppcheck.CppcheckBuildAction')}" >>>>> >>>>> /> >>>>> >>>>> >>>> value="${cppcheckAction.getResult()}" /> >>>>> >>>>> Summary >>>>> >>>>> #cppcheckStatistics { width: auto; } >>>>> #cppcheckStatistics .number { text-align: right; } >>>>> >>>>> >>>>> >>>>> >>>>> Severity >>>>> Count >>>>> Delta >>>>> >>>>> >
Re: is there a way to see all the available methods of a plugin in Jenkins?
But the object model of both is different, you need to choose the correct one in the email template! Yes, that template I am using it with publishcpp at the moment but I am not able to get the value of any of their properties within my pipeline like if I try to echo to check its value I get an error 'groovy.lang.MissingPropertyException: No such property: cppcheckResult for class: groovy.lang.Binding' so I am stuck trying to get the total number of errors from each build El viernes, 9 de abril de 2021 a las 15:41:22 UTC+2, jesus fernandez escribió: > but this is like god trying to explain something to a rock, I have just > started in this world...hehehe > > El viernes, 9 de abril de 2021 a las 15:40:44 UTC+2, jesus fernandez > escribió: > >> hahaha oh gosh I should have known I watched your video on youtube a few >> days ago. >> >> El viernes, 9 de abril de 2021 a las 15:39:30 UTC+2, ullrich...@gmail.com >> escribió: >> >>> >>> >>> I actually have tried both to publish the result, >>> >>> >>> But the object model of both is different, you need to choose the >>> correct one in the email template! >>> >>> have not decided which one to use yet, any suggestion? >>> >>> >>> I am biased as I am the author of the warnings plugin ;-) >>> >>> I like the dashboard of the warnings-ng better, but I ilke from the >>> publushcpp that you can see the line where the error is right from Jenkins >>> without need to open the editor and look for the line... >>> >>> >>> This could be done in the warnings plugin as well. >>> Example: >>> https://ci.jenkins.io/job/Plugins/job/analysis-model/job/master/1150/pmd/source.6e8cd82c-d953-4e48-9163-87d374ee6241/#32 >>> >>> >>> El viernes, 9 de abril de 2021 a las 14:40:34 UTC+2, ullrich...@ >>> gmail.com escribió: >>> >>>> First of all: are you using the warnings-ng plugin or the cppcheck >>>> plugin in your build? They use different models. >>>> >>>> I’m not sure if there is an easy way to debug email ext templates in >>>> the meantime, I am not using it actively. >>>> But you can simply start with a subset of the script below and check >>>> which values produce a result and which not. >>>> >>>> Am 09.04.2021 um 14:32 schrieb jesus fernandez >>> >: >>>> >>>> my projects are in Perforce. What if I want to acces to one of those >>>> properties which I know are available from looking at the jelly template, >>>> for instance ${cppcheckResult.getDiff().getNumberNoCategorySeverity()} I >>>> tried to echo that property but I get an error how could I access to it? >>>> this is the jelly template I am using (I took it from SO) >>>> >>> xmlns:d="jelly:define"> >>>> >>>> >>>> >>> value="${it.getAction('org.jenkinsci.plugins.cppcheck.CppcheckBuildAction')}" >>>> >>>> /> >>>> >>>> >>> value="${cppcheckAction.getResult()}" /> >>>> >>>> Summary >>>> >>>> #cppcheckStatistics { width: auto; } >>>> #cppcheckStatistics .number { text-align: right; } >>>> >>>> >>>> >>>> >>>> Severity >>>> Count >>>> Delta >>>> >>>> >>>> >>>> >>>> Error >>>> ${cppcheckResult.statistics.getNumberErrorSeverity()} >>>> ${cppcheckResult.getDiff().getNumberErrorSeverity()} >>>> >>>> >>>> Warning >>>> ${cppcheckResult.statistics.getNumberWarningSeverity()} >>>> ${cppcheckResult.getDiff().getNumberWarningSeverity()} >>>> >>>> >>>> Style >>>> ${cppcheckResult.s
Re: is there a way to see all the available methods of a plugin in Jenkins?
but this is like god trying to explain something to a rock, I have just started in this world...hehehe El viernes, 9 de abril de 2021 a las 15:40:44 UTC+2, jesus fernandez escribió: > hahaha oh gosh I should have known I watched your video on youtube a few > days ago. > > El viernes, 9 de abril de 2021 a las 15:39:30 UTC+2, ullrich...@gmail.com > escribió: > >> >> >> I actually have tried both to publish the result, >> >> >> But the object model of both is different, you need to choose the correct >> one in the email template! >> >> have not decided which one to use yet, any suggestion? >> >> >> I am biased as I am the author of the warnings plugin ;-) >> >> I like the dashboard of the warnings-ng better, but I ilke from the >> publushcpp that you can see the line where the error is right from Jenkins >> without need to open the editor and look for the line... >> >> >> This could be done in the warnings plugin as well. >> Example: >> https://ci.jenkins.io/job/Plugins/job/analysis-model/job/master/1150/pmd/source.6e8cd82c-d953-4e48-9163-87d374ee6241/#32 >> >> >> El viernes, 9 de abril de 2021 a las 14:40:34 UTC+2, ullrich...@gmail.com >> escribió: >> >>> First of all: are you using the warnings-ng plugin or the cppcheck >>> plugin in your build? They use different models. >>> >>> I’m not sure if there is an easy way to debug email ext templates in the >>> meantime, I am not using it actively. >>> But you can simply start with a subset of the script below and check >>> which values produce a result and which not. >>> >>> Am 09.04.2021 um 14:32 schrieb jesus fernandez : >>> >>> my projects are in Perforce. What if I want to acces to one of those >>> properties which I know are available from looking at the jelly template, >>> for instance ${cppcheckResult.getDiff().getNumberNoCategorySeverity()} I >>> tried to echo that property but I get an error how could I access to it? >>> this is the jelly template I am using (I took it from SO) >>> >> xmlns:d="jelly:define"> >>> >>> >>> >> value="${it.getAction('org.jenkinsci.plugins.cppcheck.CppcheckBuildAction')}" >>> >>> /> >>> >>> >> value="${cppcheckAction.getResult()}" /> >>> >>> Summary >>> >>> #cppcheckStatistics { width: auto; } >>> #cppcheckStatistics .number { text-align: right; } >>> >>> >>> >>> >>> Severity >>> Count >>> Delta >>> >>> >>> >>> >>> Error >>> ${cppcheckResult.statistics.getNumberErrorSeverity()} >>> ${cppcheckResult.getDiff().getNumberErrorSeverity()} >>> >>> >>> Warning >>> ${cppcheckResult.statistics.getNumberWarningSeverity()} >>> ${cppcheckResult.getDiff().getNumberWarningSeverity()} >>> >>> >>> Style >>> ${cppcheckResult.statistics.getNumberStyleSeverity()} >>> ${cppcheckResult.getDiff().getNumberStyleSeverity()} >>> >>> >>> Performance >>> ${cppcheckResult.statistics.getNumberPerformanceSeverity()} >>> ${cppcheckResult.getDiff().getNumberPerformanceSeverity()} >>> >>> >>> Portability >>> ${cppcheckResult.statistics.getNumberPortabilitySeverity()} >>> ${cppcheckResult.getDiff().getNumberPortabilitySeverity()} >>> >>> >>> Information >>> ${cppcheckResult.statistics.getNumberInformationSeverity()} >>> ${cppcheckResult.getDiff().getNumberInformationSeveri
Re: is there a way to see all the available methods of a plugin in Jenkins?
hahaha oh gosh I should have known I watched your video on youtube a few days ago. El viernes, 9 de abril de 2021 a las 15:39:30 UTC+2, ullrich...@gmail.com escribió: > > > I actually have tried both to publish the result, > > > But the object model of both is different, you need to choose the correct > one in the email template! > > have not decided which one to use yet, any suggestion? > > > I am biased as I am the author of the warnings plugin ;-) > > I like the dashboard of the warnings-ng better, but I ilke from the > publushcpp that you can see the line where the error is right from Jenkins > without need to open the editor and look for the line... > > > This could be done in the warnings plugin as well. > Example: > https://ci.jenkins.io/job/Plugins/job/analysis-model/job/master/1150/pmd/source.6e8cd82c-d953-4e48-9163-87d374ee6241/#32 > > > El viernes, 9 de abril de 2021 a las 14:40:34 UTC+2, ullrich...@gmail.com > escribió: > >> First of all: are you using the warnings-ng plugin or the cppcheck plugin >> in your build? They use different models. >> >> I’m not sure if there is an easy way to debug email ext templates in the >> meantime, I am not using it actively. >> But you can simply start with a subset of the script below and check >> which values produce a result and which not. >> >> Am 09.04.2021 um 14:32 schrieb jesus fernandez : >> >> my projects are in Perforce. What if I want to acces to one of those >> properties which I know are available from looking at the jelly template, >> for instance ${cppcheckResult.getDiff().getNumberNoCategorySeverity()} I >> tried to echo that property but I get an error how could I access to it? >> this is the jelly template I am using (I took it from SO) >> > xmlns:d="jelly:define"> >> >> >> > value="${it.getAction('org.jenkinsci.plugins.cppcheck.CppcheckBuildAction')}" >> >> /> >> >> > value="${cppcheckAction.getResult()}" /> >> >> Summary >> >> #cppcheckStatistics { width: auto; } >> #cppcheckStatistics .number { text-align: right; } >> >> >> >> >> Severity >> Count >> Delta >> >> >> >> >> Error >> ${cppcheckResult.statistics.getNumberErrorSeverity()} >> ${cppcheckResult.getDiff().getNumberErrorSeverity()} >> >> >> Warning >> ${cppcheckResult.statistics.getNumberWarningSeverity()} >> ${cppcheckResult.getDiff().getNumberWarningSeverity()} >> >> >> Style >> ${cppcheckResult.statistics.getNumberStyleSeverity()} >> ${cppcheckResult.getDiff().getNumberStyleSeverity()} >> >> >> Performance >> ${cppcheckResult.statistics.getNumberPerformanceSeverity()} >> ${cppcheckResult.getDiff().getNumberPerformanceSeverity()} >> >> >> Portability >> ${cppcheckResult.statistics.getNumberPortabilitySeverity()} >> ${cppcheckResult.getDiff().getNumberPortabilitySeverity()} >> >> >> Information >> ${cppcheckResult.statistics.getNumberInformationSeverity()} >> ${cppcheckResult.getDiff().getNumberInformationSeverity()} >> >> >> No category >> ${cppcheckResult.statistics.getNumberNoCategorySeverity()} >> ${cppcheckResult.getDiff().getNumberNoCategorySeverity()} >> >> >> >> >> Total >> > href="${rooturl}${build.url}cppcheckResult">${cppcheckResult.report.getNumberTotal()} >>
Re: is there a way to see all the available methods of a plugin in Jenkins?
I actually have tried both to publish the result, have not decided which one to use yet, any suggestion? I like the dashboard of the warnings-ng better, but I ilke from the publushcpp that you can see the line where the error is right from Jenkins without need to open the editor and look for the line... El viernes, 9 de abril de 2021 a las 14:40:34 UTC+2, ullrich...@gmail.com escribió: > First of all: are you using the warnings-ng plugin or the cppcheck plugin > in your build? They use different models. > > I’m not sure if there is an easy way to debug email ext templates in the > meantime, I am not using it actively. > But you can simply start with a subset of the script below and check which > values produce a result and which not. > > Am 09.04.2021 um 14:32 schrieb jesus fernandez : > > my projects are in Perforce. What if I want to acces to one of those > properties which I know are available from looking at the jelly template, > for instance ${cppcheckResult.getDiff().getNumberNoCategorySeverity()} I > tried to echo that property but I get an error how could I access to it? > this is the jelly template I am using (I took it from SO) > xmlns:d="jelly:define"> > > > value="${it.getAction('org.jenkinsci.plugins.cppcheck.CppcheckBuildAction')}" > /> > > value="${cppcheckAction.getResult()}" /> > > Summary > > #cppcheckStatistics { width: auto; } > #cppcheckStatistics .number { text-align: right; } > > > > > Severity > Count > Delta > > > > > Error > ${cppcheckResult.statistics.getNumberErrorSeverity()} > ${cppcheckResult.getDiff().getNumberErrorSeverity()} > > > Warning > ${cppcheckResult.statistics.getNumberWarningSeverity()} > ${cppcheckResult.getDiff().getNumberWarningSeverity()} > > > Style > ${cppcheckResult.statistics.getNumberStyleSeverity()} > ${cppcheckResult.getDiff().getNumberStyleSeverity()} > > > Performance > ${cppcheckResult.statistics.getNumberPerformanceSeverity()} > ${cppcheckResult.getDiff().getNumberPerformanceSeverity()} > > > Portability > ${cppcheckResult.statistics.getNumberPortabilitySeverity()} > ${cppcheckResult.getDiff().getNumberPortabilitySeverity()} > > > Information > ${cppcheckResult.statistics.getNumberInformationSeverity()} > ${cppcheckResult.getDiff().getNumberInformationSeverity()} > > > No category > ${cppcheckResult.statistics.getNumberNoCategorySeverity()} > ${cppcheckResult.getDiff().getNumberNoCategorySeverity()} > > > > > Total >href="${rooturl}${build.url}cppcheckResult">${cppcheckResult.report.getNumberTotal()} >href="${rooturl}${build.url}cppcheckResult/source.all/?before=5&after=5&states=new">${cppcheckResult.getDiff().getNumberTotal()} > > > > > > > > > > El viernes, 9 de abril de 2021 a las 14:27:16 UTC+2, ullrich...@gmail.com > escribió: > >> Are your projects located in GitHub? Then it would be quite easy to >> report results automatically using the GitHub checks plugin. Email is quite >> old-school when it comes to build result reporting... >> >> Am 09.04.2021 um 13:58 schrieb jesus fernandez : >> >> Thanks for asering. I have been checking the javadoc of the plugin >> https://javadoc.jenkins.io/plugin/email-ext/ but my java knowledge is >> super basic and I do not get to see where the methods available to Jenkins >> are. So
Re: is there a way to see all the available methods of a plugin in Jenkins?
my projects are in Perforce. What if I want to acces to one of those properties which I know are available from looking at the jelly template, for instance ${cppcheckResult.getDiff().getNumberNoCategorySeverity()} I tried to echo that property but I get an error how could I access to it? this is the jelly template I am using (I took it from SO) Summary #cppcheckStatistics { width: auto; } #cppcheckStatistics .number { text-align: right; } Severity Count Delta Error ${cppcheckResult.statistics.getNumberErrorSeverity()} ${cppcheckResult.getDiff().getNumberErrorSeverity()} Warning ${cppcheckResult.statistics.getNumberWarningSeverity()} ${cppcheckResult.getDiff().getNumberWarningSeverity()} Style ${cppcheckResult.statistics.getNumberStyleSeverity()} ${cppcheckResult.getDiff().getNumberStyleSeverity()} Performance ${cppcheckResult.statistics.getNumberPerformanceSeverity()} ${cppcheckResult.getDiff().getNumberPerformanceSeverity()} Portability ${cppcheckResult.statistics.getNumberPortabilitySeverity()} ${cppcheckResult.getDiff().getNumberPortabilitySeverity()} Information ${cppcheckResult.statistics.getNumberInformationSeverity()} ${cppcheckResult.getDiff().getNumberInformationSeverity()} No category ${cppcheckResult.statistics.getNumberNoCategorySeverity()} ${cppcheckResult.getDiff().getNumberNoCategorySeverity()} Total ${cppcheckResult.report.getNumberTotal()} ${cppcheckResult.getDiff().getNumberTotal()} El viernes, 9 de abril de 2021 a las 14:27:16 UTC+2, ullrich...@gmail.com escribió: > Are your projects located in GitHub? Then it would be quite easy to report > results automatically using the GitHub checks plugin. Email is quite > old-school when it comes to build result reporting... > > Am 09.04.2021 um 13:58 schrieb jesus fernandez : > > Thanks for asering. I have been checking the javadoc of the plugin > https://javadoc.jenkins.io/plugin/email-ext/ but my java knowledge is > super basic and I do not get to see where the methods available to Jenkins > are. So I guess this is too advanced for me ATM > > El viernes, 9 de abril de 2021 a las 13:48:03 UTC+2, ullrich...@gmail.com > escribió: > >> You need to read the code of the plugin. I.e., the model of the producer >> plugin. >> >> >> Am 09.04.2021 um 13:08 schrieb jesus fernandez : >> >> I am learning Jenkins on my own and I am trying to learn about plugins. I >> have a stage to send an email with the cppcheck results with a template I >> found >> https://stackoverflow.com/questions/13888338/sending-cppcheck-result-report-on-email-from-jenkins-using-email-ext-plugin >> >> the template instantiate the ```CppcheckBuildAction``` and access its >> methods, what I would like to know if is possible to check what methods are >> avaialable for that instance and if possible how / where I can see them. >> Also how could I for example echo / println one of them. For instance in >> the template provided in the link above it acces the total number of errors >> with ${cppcheckResult.report.getNumberTotal()} but if I echo it I get an >> error ```groovy.lang.MissingPropertyException: No such property: >> cppcheckResult for class: groovy.lang.Binding```, this is what I tried >> stage('Email') { >> steps { >> script{ >> publishCppcheck pattern:'cppcheck.xml' >> emailext( subject: 'foo', to: 'ma...@mail.net', body: '${JELLY_SCRIPT, >> template="custom"}') >> } >> echo "${cppcheckResult.repo
Re: Can I send cppcheck results through slack in a jenkins pipeline?
Thanks for replying, any documentation or link to guide me in the right direction on how to do it? I am quite Junior and have been learning Jenkins on my own El viernes, 9 de abril de 2021 a las 13:46:48 UTC+2, ullrich...@gmail.com escribió: > Exporting results from one plugin into another plugin is definitely > possible. You typically have two steps: > 1) Export the data from a producer plugin > a) using Tokens > b) using API methods of the plugin > 2) Import the data (or reformat and aggregate it) into a consumer plugin > > For step 1 I can say this works for the warnings plugin, it can export the > results of CppCheck either into tokens or into objects (that you can > process using your pipeline). > > I have no idea if the slack plugin is capable of doing step 2 though, but > I would assume that it works in that way... > > Am 09.04.2021 um 08:39 schrieb jesus fernandez : > > I just started using cppcheck, and I was wondering if there is any way to > access to the report values (for instance number of total errors) and send > it to slack. I have been searching in the documentation and here in SO but > I have found nothing, as I just have been using Jenkins for a couple of > months ( I am a junior dev) I was wondering if somebody know if this is > possible and could drive me in the right direction. > > -- > You received this message because you are subscribed to the Google Groups > "Jenkins Users" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to jenkinsci-use...@googlegroups.com. > To view this discussion on the web visit > https://groups.google.com/d/msgid/jenkinsci-users/d3aee90e-5331-480f-84d7-4df7c3ebcf6fn%40googlegroups.com > > <https://groups.google.com/d/msgid/jenkinsci-users/d3aee90e-5331-480f-84d7-4df7c3ebcf6fn%40googlegroups.com?utm_medium=email&utm_source=footer> > . > > > -- You received this message because you are subscribed to the Google Groups "Jenkins Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-users+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-users/abdfdbec-e2cf-4f69-a089-1cb93dcef30en%40googlegroups.com.
Re: is there a way to see all the available methods of a plugin in Jenkins?
Thanks for asering. I have been checking the javadoc of the plugin https://javadoc.jenkins.io/plugin/email-ext/ but my java knowledge is super basic and I do not get to see where the methods available to Jenkins are. So I guess this is too advanced for me ATM El viernes, 9 de abril de 2021 a las 13:48:03 UTC+2, ullrich...@gmail.com escribió: > You need to read the code of the plugin. I.e., the model of the producer > plugin. > > > Am 09.04.2021 um 13:08 schrieb jesus fernandez : > > I am learning Jenkins on my own and I am trying to learn about plugins. I > have a stage to send an email with the cppcheck results with a template I > found > https://stackoverflow.com/questions/13888338/sending-cppcheck-result-report-on-email-from-jenkins-using-email-ext-plugin > > the template instantiate the ```CppcheckBuildAction``` and access its > methods, what I would like to know if is possible to check what methods are > avaialable for that instance and if possible how / where I can see them. > Also how could I for example echo / println one of them. For instance in > the template provided in the link above it acces the total number of errors > with ${cppcheckResult.report.getNumberTotal()} but if I echo it I get an > error ```groovy.lang.MissingPropertyException: No such property: > cppcheckResult for class: groovy.lang.Binding```, this is what I tried > stage('Email') { > steps { > script{ > publishCppcheck pattern:'cppcheck.xml' > emailext( subject: 'foo', to: 'ma...@mail.net', body: '${JELLY_SCRIPT, > template="custom"}') > } > echo "${cppcheckResult.report.getNumberTotal()}" > } > } > my final goal actually is to send the email just when the report find a > new error so I was thinking to save the total number of errors in an > external file and compare it with each build and if the number is bigger > send the email, is there any native / easier way to do this? > > -- > You received this message because you are subscribed to the Google Groups > "Jenkins Users" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to jenkinsci-use...@googlegroups.com. > To view this discussion on the web visit > https://groups.google.com/d/msgid/jenkinsci-users/901e41a0-e2ec-466c-87a9-23d6082897e1n%40googlegroups.com > > <https://groups.google.com/d/msgid/jenkinsci-users/901e41a0-e2ec-466c-87a9-23d6082897e1n%40googlegroups.com?utm_medium=email&utm_source=footer> > . > > > -- You received this message because you are subscribed to the Google Groups "Jenkins Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-users+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-users/48090815-12d1-4f8a-a15b-2d0c0185b830n%40googlegroups.com.
is there a way to see all the available methods of a plugin in Jenkins?
I am learning Jenkins on my own and I am trying to learn about plugins. I have a stage to send an email with the cppcheck results with a template I found https://stackoverflow.com/questions/13888338/sending-cppcheck-result-report-on-email-from-jenkins-using-email-ext-plugin the template instantiate the ```CppcheckBuildAction``` and access its methods, what I would like to know if is possible to check what methods are avaialable for that instance and if possible how / where I can see them. Also how could I for example echo / println one of them. For instance in the template provided in the link above it acces the total number of errors with ${cppcheckResult.report.getNumberTotal()} but if I echo it I get an error ```groovy.lang.MissingPropertyException: No such property: cppcheckResult for class: groovy.lang.Binding```, this is what I tried stage('Email') { steps { script{ publishCppcheck pattern:'cppcheck.xml' emailext( subject: 'foo', to: 'm...@mail.net', body: '${JELLY_SCRIPT, template="custom"}') } echo "${cppcheckResult.report.getNumberTotal()}" } } my final goal actually is to send the email just when the report find a new error so I was thinking to save the total number of errors in an external file and compare it with each build and if the number is bigger send the email, is there any native / easier way to do this? -- You received this message because you are subscribed to the Google Groups "Jenkins Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-users+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-users/901e41a0-e2ec-466c-87a9-23d6082897e1n%40googlegroups.com.
Can I send cppcheck results through slack in a jenkins pipeline?
I just started using cppcheck, and I was wondering if there is any way to access to the report values (for instance number of total errors) and send it to slack. I have been searching in the documentation and here in SO but I have found nothing, as I just have been using Jenkins for a couple of months ( I am a junior dev) I was wondering if somebody know if this is possible and could drive me in the right direction. -- You received this message because you are subscribed to the Google Groups "Jenkins Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-users+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-users/d3aee90e-5331-480f-84d7-4df7c3ebcf6fn%40googlegroups.com.
Re: I cannot run Azure CLI commands from jenkins pipeline
it happened to be an issue with the path, as jenkins uses its own path for its user I have not declared the path for the right user El miércoles, 7 de abril de 2021 a las 9:24:44 UTC+2, jesus fernandez escribió: > az is installed as it runs from the cmd, and it also runs if I start > jenkins from a non administrator prompt, it just do not work when starting > Jenkins from a admin prompt (which I need to) > > El martes, 6 de abril de 2021 a las 21:22:06 UTC+2, Martin Schmude > escribió: > >> Maybe az has not been installed on the system where the job is executed. >> Or az is not part of the PATH variable in the context of the job >> execution. >> Let the job execute "echo $env:path" before any "az ..." commands, so >> that it prints out its path environment variable. >> >> jesusfern...@gmail.com schrieb am Dienstag, 6. April 2021 um 13:21:16 >> UTC+2: >> >>> I am trying to run some az commands from a Jenkins pipeline which >>> (running in Windows 10) I already used in my laptop´s Jenkins, but when >>> trying to use it on another computer (also running w10) I get this error : >>> ``` >>> 11:12:47 powershell.exe : az : The term 'az' is not recognized as the >>> name of a cmdlet, function, script file, or operable program. Check the >>> 11:12:47 At >>> C:\Users\User\.jenkins\workspace\playground@tmp\durable-933c3d89\powershellWrapper.ps1:3 >>> >>> char:1 >>> 11:12:47 + & powershell -NoProfile -NonInteractive -ExecutionPolicy >>> Bypass -Comm ... >>> 11:12:47 + >>> ~ >>> 11:12:47 + CategoryInfo : NotSpecified: (az : The term >>> '...ram. Check the :String) [], RemoteException >>> 11:12:47 + FullyQualifiedErrorId : NativeCommandError >>> 11:12:47 >>> 11:12:47 spelling of the name, or if a path was included, verify that >>> the path is correct and try again. >>> 11:12:47 At >>> C:\Users\User\.jenkins\workspace\playground\tmp\durable-933c3d89\powershellScript.ps1:3 >>> >>> char:25 >>> 11:12:47 + az devops configure --defaults >>> organization=h ... >>> 11:12:47 + ~~ >>> 11:12:47 + CategoryInfo : ObjectNotFound: (az:String) [], >>> CommandNotFoundException >>> 11:12:47 + FullyQualifiedErrorId : CommandNotFoundException >>> 11:12:47 >>> 11:12:47 az : The term 'az' is not recognized as the name of a cmdlet, >>> function, script file, or operable program. Check the >>> 11:12:47 spelling of the name, or if a path was included, verify that >>> the path is correct and try again. >>> 11:12:47 At >>> C:\Users\User\.jenkins\workspace\playground@tmp\durable-933c3d89\powershellScript.ps1:4 >>> >>> char:35 >>> 11:12:47 + $output = az boards work-item show >>> --id=89609 ... >>> 11:12:47 + ~~ >>> 11:12:47 + CategoryInfo : ObjectNotFound: (az:String) [], >>> CommandNotFoundException >>> 11:12:47 + FullyQualifiedErrorId : CommandNotFoundException >>> ``` >>> However running any command from the cmd / powershell works fine. I have >>> set the ```Set-ExecutionPolicy Unrestricted``` command but I do not get any >>> hint of what is going wrong >>> >> -- You received this message because you are subscribed to the Google Groups "Jenkins Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-users+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-users/5bcb14dd-b50c-4fe8-a8af-967fb502720an%40googlegroups.com.
error when sending jelly template using email ext plugin with jenkins
I want to send the cppcheck report through email but I had never used the email ext plugin before, so I found this https://stackoverflow.com/questions/13888338/sending-cppcheck-result-report-on-email-from-jenkins-using-email-ext-plugin with a nice jelly template to do so, I have also followed the steps in the documentation, to send my own templates in a pipeline job, I have created my template with a .jelly extension and set it into my ```$JENKINS_HOME\email-templates``` although the email-templates folder did not exist, so I am not sure if it should be created beforehand just by installing the plugin or what I am missing. This is my stage ``` stage('Mail cppcheck report') { steps{ script{ def mailRecipients = "em...@email.net" def jobName = currentBuild.fullDisplayName mimeType: 'text/html' emailext body: '''${JELLY_SCRIPT, template="custom"}''', subject: "[Jenkins] ${jobName}", to: "${mailRecipients}" } } } ``` And this is the template I want to use but I keep getting the following error ``` JellyException: Could not parse Jelly script : null``` even though the email is sent the email body is just the error mentioned above. ``` CPPCHECK RESULT Found: ${cppcheckResult.report.getNumberTotal()} ``` I have also tried with some other templates and I get no error but I receive an empty email instead, like with this one. ``` Summary #cppcheckStatistics { width: auto; } #cppcheckStatistics .number { text-align: right; } Severity Count Delta Error ${cppcheckResult.statistics.getNumberErrorSeverity()} ${cppcheckResult.getDiff().getNumberErrorSeverity()} Warning ${cppcheckResult.statistics.getNumberWarningSeverity()} ${cppcheckResult.getDiff().getNumberWarningSeverity()} Style ${cppcheckResult.statistics.getNumberStyleSeverity()} ${cppcheckResult.getDiff().getNumberStyleSeverity()} Performance ${cppcheckResult.statistics.getNumberPerformanceSeverity()} ${cppcheckResult.getDiff().getNumberPerformanceSeverity()} Portability ${cppcheckResult.statistics.getNumberPortabilitySeverity()} ${cppcheckResult.getDiff().getNumberPortabilitySeverity()} Information ${cppcheckResult.statistics.getNumberInformationSeverity()} ${cppcheckResult.getDiff().getNumberInformationSeverity()} No category ${cppcheckResult.statistics.getNumberNoCategorySeverity()} ${cppcheckResult.getDiff().getNumberNoCategorySeverity()} Total ${cppcheckResult.report.getNumberTotal()} ${cppcheckResult.getDiff().getNumberTotal()} ``` -- You received this message because you are subscribed to the Google Groups "Jenkins Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-users+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-users/8ea4ff9c-1e1f-4b63-b05c-7b04bad9f310n%40googlegroups.com.
Re: how can I use my own templates with email ext plugin in Jenkins?
I have also tried with some other templates with the same result, if I remove the ```mimeType: 'text/html'``` I do not get an error but I get a blank email in both cases El jueves, 8 de abril de 2021 a las 13:02:11 UTC+2, jesus fernandez escribió: > I want to send the cppcheck report through email but I had never used the > email ext plugin before, so I found this > https://stackoverflow.com/questions/13888338/sending-cppcheck-result-report-on-email-from-jenkins-using-email-ext-plugin > > with a nice jelly template to do so, I have also followed the steps in the > documentation, to send my own templates in a pipeline job, I have created > my template with a .jelly extension and set it into my > ```$JENKINS_HOME\email-templates``` although the email-templates folder did > not exist, so I am not sure if it should be created beforehand just by > installing the plugin or what I am missing. This is my stage > ``` > stage('Mail cppcheck report') { > steps{ > script{ > def mailRecipients = "em...@email.net" > def jobName = currentBuild.fullDisplayName > > emailext body: '''${JELLY_SCRIPT, > template="custom"}''', > subject: "[Jenkins] ${jobName}", > to: "${mailRecipients}" > } > } > } > ``` > > And this is the template I want to use but I keep getting the following > error ``` JellyException: Could not parse Jelly script : null``` > > ``` > xmlns:d="jelly:define"> > > value="${it.getAction('org.jenkinsci.plugins.cppcheck.CppcheckBuildAction')}" > /> > > > > Summary > > #cppcheckStatistics { width: auto; } > #cppcheckStatistics .number { text-align: right; } > > > > > Severity > Count > Delta > > > > > Error > ${cppcheckResult.statistics.getNumberErrorSeverity()} > ${cppcheckResult.getDiff().getNumberErrorSeverity()} > > > Warning > ${cppcheckResult.statistics.getNumberWarningSeverity()} > ${cppcheckResult.getDiff().getNumberWarningSeverity()} > > > Style > ${cppcheckResult.statistics.getNumberStyleSeverity()} > ${cppcheckResult.getDiff().getNumberStyleSeverity()} > > > Performance > ${cppcheckResult.statistics.getNumberPerformanceSeverity()} > ${cppcheckResult.getDiff().getNumberPerformanceSeverity()} > > > Portability > ${cppcheckResult.statistics.getNumberPortabilitySeverity()} > ${cppcheckResult.getDiff().getNumberPortabilitySeverity()} > > > Information > ${cppcheckResult.statistics.getNumberInformationSeverity()} > ${cppcheckResult.getDiff().getNumberInformationSeverity()} > > > No category > ${cppcheckResult.statistics.getNumberNoCategorySeverity()} > ${cppcheckResult.getDiff().getNumberNoCategorySeverity()} > > > > > Total >href="${rooturl}${build.url}cppcheckResult">${cppcheckResult.report.getNumberTotal()} >href="${rooturl}${build.url}cppcheckResult/source.all/?before=5&after=5&states=new">${cppcheckResult.getDiff().getNumberTotal()} > > > > > > > > ``` > > -- You received this message because you are subscribed to the Google Groups "Jenkins Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-users+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-users/43b0776a-7903-46fb-96b6-ef1b73db27can%40googlegroups.com.
how can I use my own templates with email ext plugin in Jenkins?
I want to send the cppcheck report through email but I had never used the email ext plugin before, so I found this https://stackoverflow.com/questions/13888338/sending-cppcheck-result-report-on-email-from-jenkins-using-email-ext-plugin with a nice jelly template to do so, I have also followed the steps in the documentation, to send my own templates in a pipeline job, I have created my template with a .jelly extension and set it into my ```$JENKINS_HOME\email-templates``` although the email-templates folder did not exist, so I am not sure if it should be created beforehand just by installing the plugin or what I am missing. This is my stage ``` stage('Mail cppcheck report') { steps{ script{ def mailRecipients = "em...@email.net" def jobName = currentBuild.fullDisplayName emailext body: '''${JELLY_SCRIPT, template="custom"}''', subject: "[Jenkins] ${jobName}", to: "${mailRecipients}" } } } ``` And this is the template I want to use but I keep getting the following error ``` JellyException: Could not parse Jelly script : null``` ``` Summary #cppcheckStatistics { width: auto; } #cppcheckStatistics .number { text-align: right; } Severity Count Delta Error ${cppcheckResult.statistics.getNumberErrorSeverity()} ${cppcheckResult.getDiff().getNumberErrorSeverity()} Warning ${cppcheckResult.statistics.getNumberWarningSeverity()} ${cppcheckResult.getDiff().getNumberWarningSeverity()} Style ${cppcheckResult.statistics.getNumberStyleSeverity()} ${cppcheckResult.getDiff().getNumberStyleSeverity()} Performance ${cppcheckResult.statistics.getNumberPerformanceSeverity()} ${cppcheckResult.getDiff().getNumberPerformanceSeverity()} Portability ${cppcheckResult.statistics.getNumberPortabilitySeverity()} ${cppcheckResult.getDiff().getNumberPortabilitySeverity()} Information ${cppcheckResult.statistics.getNumberInformationSeverity()} ${cppcheckResult.getDiff().getNumberInformationSeverity()} No category ${cppcheckResult.statistics.getNumberNoCategorySeverity()} ${cppcheckResult.getDiff().getNumberNoCategorySeverity()} Total ${cppcheckResult.report.getNumberTotal()} ${cppcheckResult.getDiff().getNumberTotal()} ``` -- You received this message because you are subscribed to the Google Groups "Jenkins Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-users+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-users/276b13fb-4be3-4fc3-8268-4c7ea2ddd3b7n%40googlegroups.com.
Re: I cannot run Azure CLI commands from jenkins pipeline
az is installed as it runs from the cmd, and it also runs if I start jenkins from a non administrator prompt, it just do not work when starting Jenkins from a admin prompt (which I need to) El martes, 6 de abril de 2021 a las 21:22:06 UTC+2, Martin Schmude escribió: > Maybe az has not been installed on the system where the job is executed. > Or az is not part of the PATH variable in the context of the job execution. > Let the job execute "echo $env:path" before any "az ..." commands, so that > it prints out its path environment variable. > > jesusfern...@gmail.com schrieb am Dienstag, 6. April 2021 um 13:21:16 > UTC+2: > >> I am trying to run some az commands from a Jenkins pipeline which >> (running in Windows 10) I already used in my laptop´s Jenkins, but when >> trying to use it on another computer (also running w10) I get this error : >> ``` >> 11:12:47 powershell.exe : az : The term 'az' is not recognized as the >> name of a cmdlet, function, script file, or operable program. Check the >> 11:12:47 At >> C:\Users\User\.jenkins\workspace\playground@tmp\durable-933c3d89\powershellWrapper.ps1:3 >> >> char:1 >> 11:12:47 + & powershell -NoProfile -NonInteractive -ExecutionPolicy >> Bypass -Comm ... >> 11:12:47 + >> ~ >> 11:12:47 + CategoryInfo : NotSpecified: (az : The term >> '...ram. Check the :String) [], RemoteException >> 11:12:47 + FullyQualifiedErrorId : NativeCommandError >> 11:12:47 >> 11:12:47 spelling of the name, or if a path was included, verify that >> the path is correct and try again. >> 11:12:47 At >> C:\Users\User\.jenkins\workspace\playground\tmp\durable-933c3d89\powershellScript.ps1:3 >> >> char:25 >> 11:12:47 + az devops configure --defaults >> organization=h ... >> 11:12:47 + ~~ >> 11:12:47 + CategoryInfo : ObjectNotFound: (az:String) [], >> CommandNotFoundException >> 11:12:47 + FullyQualifiedErrorId : CommandNotFoundException >> 11:12:47 >> 11:12:47 az : The term 'az' is not recognized as the name of a cmdlet, >> function, script file, or operable program. Check the >> 11:12:47 spelling of the name, or if a path was included, verify that >> the path is correct and try again. >> 11:12:47 At >> C:\Users\User\.jenkins\workspace\playground@tmp\durable-933c3d89\powershellScript.ps1:4 >> >> char:35 >> 11:12:47 + $output = az boards work-item show >> --id=89609 ... >> 11:12:47 + ~~ >> 11:12:47 + CategoryInfo : ObjectNotFound: (az:String) [], >> CommandNotFoundException >> 11:12:47 + FullyQualifiedErrorId : CommandNotFoundException >> ``` >> However running any command from the cmd / powershell works fine. I have >> set the ```Set-ExecutionPolicy Unrestricted``` command but I do not get any >> hint of what is going wrong >> > -- You received this message because you are subscribed to the Google Groups "Jenkins Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-users+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-users/63896e4c-2dd0-42b6-8778-5ad554637512n%40googlegroups.com.
I cannot run Azure CLI commands from jenkins pipeline
I am trying to run some az commands from a Jenkins pipeline which (running in Windows 10) I already used in my laptop´s Jenkins, but when trying to use it on another computer (also running w10) I get this error : ``` 11:12:47 powershell.exe : az : The term 'az' is not recognized as the name of a cmdlet, function, script file, or operable program. Check the 11:12:47 At C:\Users\User\.jenkins\workspace\playground@tmp\durable-933c3d89\powershellWrapper.ps1:3 char:1 11:12:47 + & powershell -NoProfile -NonInteractive -ExecutionPolicy Bypass -Comm ... 11:12:47 + ~ 11:12:47 + CategoryInfo : NotSpecified: (az : The term '...ram. Check the :String) [], RemoteException 11:12:47 + FullyQualifiedErrorId : NativeCommandError 11:12:47 11:12:47 spelling of the name, or if a path was included, verify that the path is correct and try again. 11:12:47 At C:\Users\User\.jenkins\workspace\playground\tmp\durable-933c3d89\powershellScript.ps1:3 char:25 11:12:47 + az devops configure --defaults organization=h ... 11:12:47 + ~~ 11:12:47 + CategoryInfo : ObjectNotFound: (az:String) [], CommandNotFoundException 11:12:47 + FullyQualifiedErrorId : CommandNotFoundException 11:12:47 11:12:47 az : The term 'az' is not recognized as the name of a cmdlet, function, script file, or operable program. Check the 11:12:47 spelling of the name, or if a path was included, verify that the path is correct and try again. 11:12:47 At C:\Users\User\.jenkins\workspace\playground@tmp\durable-933c3d89\powershellScript.ps1:4 char:35 11:12:47 + $output = az boards work-item show --id=89609 ... 11:12:47 + ~~ 11:12:47 + CategoryInfo : ObjectNotFound: (az:String) [], CommandNotFoundException 11:12:47 + FullyQualifiedErrorId : CommandNotFoundException ``` However running any command from the cmd / powershell works fine. I have set the ```Set-ExecutionPolicy Unrestricted``` command but I do not get any hint of what is going wrong -- You received this message because you are subscribed to the Google Groups "Jenkins Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-users+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-users/5b733163-a0c1-40c5-b747-2ba12bd09f2en%40googlegroups.com.
Re: how can I run cppcheck in Jenkins?
Thanks for answering, I tried what you suggested but adding it as a env variable to the node variables does not work either. Regarding adding it to the jenkins user path I am not sure what you mean, I am not sure how to do that in windows 10, I start jenkins just by executing the .war file El miércoles, 31 de marzo de 2021 a las 15:35:37 UTC+2, Jérôme Godbout escribió: > Jenkins run as his own user by default, check node user or login user you > are using. The cppcheck must be into that user env PATH variable. > > > > I work round this to avoid spamming the PATH variable on the machine by > doing env config into Jenkins, and I use that env variable to give a full > path on each node. > > > > https:///computer//configure > > > > > > Then each node can install or put his binary into a custom path depends on > the node. I use the node label to declare his capacity: > > > > > > That way I run into a node that provide DOXYGEN for example, I then need > to resolve the doxygen path with the env variable or if the variable is not > present I assume the tool is inside the node current PATH var already (save > some time for tool that are install system wide). > > > > *Jérôme Godbout, B. Ing.* > > > Software / Firmware Team Lead > *O:* (418) 682-3636 ext.: 114 > > *C:* (581) 777-0050 > godb...@dimonoff.com > > [image: signature_16446078] <https://www.dimonoff.com/> > > *dimonoff.com* <https://www.dimonoff.com/> > > 1015 Avenue Wilfrid-Pelletier, > > Québec, QC G1W 0C4, 4e étage > > > > > > *From: *jenkins...@googlegroups.com on > behalf of jesus fernandez > *Date: *Wednesday, March 31, 2021 at 5:44 AM > *To: *Jenkins Users > *Subject: *how can I run cppcheck in Jenkins? > > I have a playground pipeline and I am trying to start using cppcheck, but > when I execute the command in the cmd (I am running windows 10) it works > fine, but if executing the command inside the pipeline, it returns > ```'cppcheck' is not recognized as an internal or external command``` I > have installed the plugin and restarted Jenkins... what am I missing then? > . This is the sample pipeline: > > ``` > > pipeline { > > agent any > > stages { > > stage('Static Analysis') { > > steps { > > script{ > > env.FAILED_STAGE=env.STAGE_NAME > > bat'cppcheck "D:/Source/Game"' > > } > > } > > } > > } > > } > > ``` > > > > however the exactly same command, copied and pasted into the cmd, works > just fine, analyze the folder and gives me the cppcheck.xml file. > > > > Also if running the pipeline like this it seems to work just fine: > > ``` > > stage('Static Analysis') { > > steps { > > script{ > > bat'call "C:\\Program Files\\Cppcheck\\cppcheck.exe" > D:\\Source\\Game --xml --xml-version=2 . 2> cppcheck.xml' > > } > > } > > } > > ``` > > > > -- > You received this message because you are subscribed to the Google Groups > "Jenkins Users" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to jenkinsci-use...@googlegroups.com. > To view this discussion on the web visit > https://groups.google.com/d/msgid/jenkinsci-users/04691194-8864-411b-bd34-2ed8e20ab9fan%40googlegroups.com > > <https://groups.google.com/d/msgid/jenkinsci-users/04691194-8864-411b-bd34-2ed8e20ab9fan%40googlegroups.com?utm_medium=email&utm_source=footer> > . > -- You received this message because you are subscribed to the Google Groups "Jenkins Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-users+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-users/071dc060-c260-4885-9d15-f96043d15964n%40googlegroups.com.
how can I run cppcheck in Jenkins?
I have a playground pipeline and I am trying to start using cppcheck, but when I execute the command in the cmd (I am running windows 10) it works fine, but if executing the command inside the pipeline, it returns ```'cppcheck' is not recognized as an internal or external command``` I have installed the plugin and restarted Jenkins... what am I missing then? . This is the sample pipeline: ``` pipeline { agent any stages { stage('Static Analysis') { steps { script{ env.FAILED_STAGE=env.STAGE_NAME bat'cppcheck "D:/Source/Game"' } } } } } ``` however the exactly same command, copied and pasted into the cmd, works just fine, analyze the folder and gives me the cppcheck.xml file. Also if running the pipeline like this it seems to work just fine: ``` stage('Static Analysis') { steps { script{ bat'call "C:\\Program Files\\Cppcheck\\cppcheck.exe" D:\\Source\\Game --xml --xml-version=2 . 2> cppcheck.xml' } } } ``` -- You received this message because you are subscribed to the Google Groups "Jenkins Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-users+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-users/04691194-8864-411b-bd34-2ed8e20ab9fan%40googlegroups.com.
Re: How to publish cppcheck results in a pipeline?
Thanks Jerome I use sonarqube at the moment ( I am also learning on this one, but at least is working) but I wanted to check other alternatives as sonarqibe slow down the pipeline as it takes quiet some computing time. Would you recommend sonarqube over cppcheck for a jenkins pipeline? El vie., 26 mar. 2021 14:52, Jérôme Godbout escribió: > You probably need something like this: > > cppcheck --xml-version=2 --enable=all 2>samplecppcheck.xml > > > > > https://stackoverflow.com/questions/10611011/cannot-generate-xml-output-from-cppcheck > > > > cppcheck is a pain from command line, the command line was an after > though, they screw big time. I stop using it just for that reason, the CLI > is not matching the GUI and the results are unpredictable in case of > errors. The fact that it requires the redirection of std_err, just that > show a bad design from people who doesn’t give a damn about CLI. I strongly > recommend you find something else to do your static analysis into your CI. > > > > > > *Jérôme Godbout, B. Ing.* > > > Software / Firmware Team Lead > *O:* (418) 682-3636 ext.: 114 > > *C:* (581) 777-0050 > godbo...@dimonoff.com > > [image: signature_1613841900] <https://www.dimonoff.com/> > > *dimonoff.com* <https://www.dimonoff.com/> > > 1015 Avenue Wilfrid-Pelletier, > > Québec, QC G1W 0C4, 4e étage > > > > > > *From: *jenkinsci-users@googlegroups.com > on behalf of Ullrich Hafner > *Date: *Friday, March 26, 2021 at 7:44 AM > *To: *Jenkins Users > *Subject: *Re: How to publish cppcheck results in a pipeline? > > I don’t know. Don’t you have a dedicated forum to ask cppcheck questions? > > > > I still do not understand why you are redirecting stdout or stderr. I > would assume that every tool that creates XML files automatically creates > the file in your workspace. Did you check the workspace if there is a file > if you omit the redirect (>)? > > > > > > Am 26.03.2021 um 11:28 schrieb jesus fernandez < > jesusfernandez0...@gmail.com>: > > > > Thanks for the replies but how woud the command be then? something like > this cppcheck "E:/Source" --force — enable=all — inconclusive — xml — > xml-version=2 . > cppcheck.xm > > El jueves, 25 de marzo de 2021 a las 21:49:15 UTC+1, ullrich...@gmail.com > escribió: > > Yes, this is definitely not XML :-) > > This is the stderr of your program! > > > > 2 > cppcheck.xml pipes your stderr to a file. You do not need this part. > > > > Am 25.03.2021 um 20:08 schrieb jesus fernandez : > > > > so it seems like if it basically is writting all the outputs the cmd throws > > El jueves, 25 de marzo de 2021 a las 20:07:20 UTC+1, jesus fernandez > escribió: > > the supposely .xml does not have any format, these are the first 5 lines: > > Checking E:\Source\Game\AchievementManager.cpp ... > > > Checking E:\Source\Game\AchievementManager.cpp: > APP_STEAM;FINAL_RELEASE;_DEBUG... > > > Checking E:\Source\Game\AchievementManager.cpp: > APP_STEAM;NEED_AOE1DE_ACHIEVEMENT_TEST;_DEBUG... > > > Checking E:\Source\Game\AchievementManager.cpp: > APP_STEAM;NEED_AOE3DE_ACHIEVEMENT_TEST;_DEBUG... > > Checking E:\Source\Game\AchievementManager.cpp: APP_STEAM;_DEBUG... > > > > El jueves, 25 de marzo de 2021 a las 19:47:22 UTC+1, ullrich...@gmail.com > escribió: > > If you can’t check on your own if the file contains valid XML can you > please show the first 5 lines of the XML file here? > > > > Am 25.03.2021 um 19:36 schrieb jesus fernandez : > > > > I thought the ```bat'cppcheck "E:/Source" --force — enable=all — > inconclusive — xml — xml-version=2 . 2 > cppcheck.xml'``` command does > genearate a valid xml. is it a matter of missing parameters or a matter of > having to parse the output? in the documentation and the SO link I attached > it is supposed to be done like that... what am I missing here? > > El jueves, 25 de marzo de 2021 a las 18:21:38 UTC+1, ullrich...@gmail.com > escribió: > > The exception says it is not a valid XML file. Is it a valid XML file? > Seems that there is content before the fir XML tag. Can you open it in an > editor that can validate the XML? > > > > Am 25.03.2021 um 17:57 schrieb jesus fernandez : > > > > Thanks for replying, I have opened and it has 2000 lines of code but I do > not know if it is valid or not as I have never used cppcheck before, and if > it is not valid is it because I am not using the right parameters when > calling cppcheck or how? > > > > > > El jueves, 25 de marzo de 2021 a las 17:44:44 UTC+1, ullrich.
Re: How to publish cppcheck results in a pipeline?
Thanks for the replies but how woud the command be then? something like this cppcheck "E:/Source" --force — enable=all — inconclusive — xml — xml-version=2 . > cppcheck.xm El jueves, 25 de marzo de 2021 a las 21:49:15 UTC+1, ullrich...@gmail.com escribió: > Yes, this is definitely not XML :-) > This is the stderr of your program! > > 2 > cppcheck.xml pipes your stderr to a file. You do not need this part. > > Am 25.03.2021 um 20:08 schrieb jesus fernandez : > > so it seems like if it basically is writting all the outputs the cmd throws > > El jueves, 25 de marzo de 2021 a las 20:07:20 UTC+1, jesus fernandez > escribió: > >> the supposely .xml does not have any format, these are the first 5 lines: >> Checking E:\Source\Game\AchievementManager.cpp ... >> >> Checking E:\Source\Game\AchievementManager.cpp: >> APP_STEAM;FINAL_RELEASE;_DEBUG... >> >> Checking E:\Source\Game\AchievementManager.cpp: >> APP_STEAM;NEED_AOE1DE_ACHIEVEMENT_TEST;_DEBUG... >> >> Checking E:\Source\Game\AchievementManager.cpp: >> APP_STEAM;NEED_AOE3DE_ACHIEVEMENT_TEST;_DEBUG... >> Checking E:\Source\Game\AchievementManager.cpp: APP_STEAM;_DEBUG... >> >> El jueves, 25 de marzo de 2021 a las 19:47:22 UTC+1, ullrich...@gmail.com >> escribió: >> >>> If you can’t check on your own if the file contains valid XML can you >>> please show the first 5 lines of the XML file here? >>> >>> Am 25.03.2021 um 19:36 schrieb jesus fernandez : >>> >>> I thought the ```bat'cppcheck "E:/Source" --force — enable=all — >>> inconclusive — xml — xml-version=2 . 2 > cppcheck.xml'``` command does >>> genearate a valid xml. is it a matter of missing parameters or a matter of >>> having to parse the output? in the documentation and the SO link I attached >>> it is supposed to be done like that... what am I missing here? >>> >>> El jueves, 25 de marzo de 2021 a las 18:21:38 UTC+1, ullrich...@ >>> gmail.com escribió: >>> >>>> The exception says it is not a valid XML file. Is it a valid XML file? >>>> Seems that there is content before the fir XML tag. Can you open it in an >>>> editor that can validate the XML? >>>> >>>> Am 25.03.2021 um 17:57 schrieb jesus fernandez >>> >: >>>> >>>> Thanks for replying, I have opened and it has 2000 lines of code but I >>>> do not know if it is valid or not as I have never used cppcheck before, >>>> and >>>> if it is not valid is it because I am not using the right parameters when >>>> calling cppcheck or how? >>>> >>>> >>>> >>>> El jueves, 25 de marzo de 2021 a las 17:44:44 UTC+1, ullrich...@ >>>> gmail.com escribió: >>>> >>>>> It look like your create XML is not valid. Can you please open the XML >>>>> file and check? >>>>> >>>>> Am 25.03.2021 um 17:40 schrieb jesus fernandez >>>> >: >>>>> >>>>> I am learning about Jenkins on my own, and I wanted to try the >>>>> cppcheck plugin, I have setup the following sample pipeline: >>>>> ``` >>>>> pipeline { >>>>> agent any >>>>> >>>>> stages { >>>>> stage('analysis') { >>>>> steps { >>>>> script{ >>>>> bat'cppcheck "E:/Source" --force — enable=all — >>>>> inconclusive — xml — xml-version=2 . 2 > cppcheck.xml' >>>>> } >>>>> } >>>>> } >>>>> } >>>>> post { >>>>> always { >>>>> // scanForIssues tool: cppCheck(pattern: 'cppcheck.xml') >>>>> publishCppcheck pattern:'cppcheck.xml' >>>>> } >>>>> } >>>>> } >>>>> ``` >>>>> >>>>> But I get an error in the post step which I do not know if it is >>>>> related to my projecto or if I am doing something wrong. I have follow >>>>> the >>>>> instructions on this thread [cppcheck][1]but it does not seem to work, >>>>> wehther I use ```publushCppcheck``` : >>>>> ``` >>>>> [Pipeline] { (Declarative: Post Actions) >>>>> [Pipeline] publishCppcheck (hi
Re: How to publish cppcheck results in a pipeline?
so it seems like if it basically is writting all the outputs the cmd throws El jueves, 25 de marzo de 2021 a las 20:07:20 UTC+1, jesus fernandez escribió: > the supposely .xml does not have any format, these are the first 5 lines: > Checking E:\Source\Game\AchievementManager.cpp ... > > Checking E:\Source\Game\AchievementManager.cpp: > APP_STEAM;FINAL_RELEASE;_DEBUG... > > Checking E:\Source\Game\AchievementManager.cpp: > APP_STEAM;NEED_AOE1DE_ACHIEVEMENT_TEST;_DEBUG... > > Checking E:\Source\Game\AchievementManager.cpp: > APP_STEAM;NEED_AOE3DE_ACHIEVEMENT_TEST;_DEBUG... > Checking E:\Source\Game\AchievementManager.cpp: APP_STEAM;_DEBUG... > > El jueves, 25 de marzo de 2021 a las 19:47:22 UTC+1, ullrich...@gmail.com > escribió: > >> If you can’t check on your own if the file contains valid XML can you >> please show the first 5 lines of the XML file here? >> >> Am 25.03.2021 um 19:36 schrieb jesus fernandez : >> >> I thought the ```bat'cppcheck "E:/Source" --force — enable=all — >> inconclusive — xml — xml-version=2 . 2 > cppcheck.xml'``` command does >> genearate a valid xml. is it a matter of missing parameters or a matter of >> having to parse the output? in the documentation and the SO link I attached >> it is supposed to be done like that... what am I missing here? >> >> El jueves, 25 de marzo de 2021 a las 18:21:38 UTC+1, ullrich...@gmail.com >> escribió: >> >>> The exception says it is not a valid XML file. Is it a valid XML file? >>> Seems that there is content before the fir XML tag. Can you open it in an >>> editor that can validate the XML? >>> >>> Am 25.03.2021 um 17:57 schrieb jesus fernandez : >>> >>> Thanks for replying, I have opened and it has 2000 lines of code but I >>> do not know if it is valid or not as I have never used cppcheck before, and >>> if it is not valid is it because I am not using the right parameters when >>> calling cppcheck or how? >>> >>> >>> >>> El jueves, 25 de marzo de 2021 a las 17:44:44 UTC+1, ullrich...@ >>> gmail.com escribió: >>> >>>> It look like your create XML is not valid. Can you please open the XML >>>> file and check? >>>> >>>> Am 25.03.2021 um 17:40 schrieb jesus fernandez >>> >: >>>> >>>> I am learning about Jenkins on my own, and I wanted to try the cppcheck >>>> plugin, I have setup the following sample pipeline: >>>> ``` >>>> pipeline { >>>> agent any >>>> >>>> stages { >>>> stage('analysis') { >>>> steps { >>>> script{ >>>> bat'cppcheck "E:/Source" --force — enable=all — >>>> inconclusive — xml — xml-version=2 . 2 > cppcheck.xml' >>>> } >>>> } >>>> } >>>> } >>>> post { >>>> always { >>>> // scanForIssues tool: cppCheck(pattern: 'cppcheck.xml') >>>> publishCppcheck pattern:'cppcheck.xml' >>>> } >>>> } >>>> } >>>> ``` >>>> >>>> But I get an error in the post step which I do not know if it is >>>> related to my projecto or if I am doing something wrong. I have follow the >>>> instructions on this thread [cppcheck][1]but it does not seem to work, >>>> wehther I use ```publushCppcheck``` : >>>> ``` >>>> [Pipeline] { (Declarative: Post Actions) >>>> [Pipeline] publishCppcheck (hide) >>>> [Cppcheck] Starting the cppcheck analysis. >>>> [Cppcheck] Processing 1 files with the pattern 'cppcheck.xml'. >>>> [Cppcheck] Parsing throws exceptions. javax.xml.bind.UnmarshalException >>>> - with linked exception: >>>> [org.xml.sax.SAXParseException; systemId: >>>> file:/C:/Users/anton/.jenkins/workspace/JOB4/cppcheck.xml; lineNumber: 1; >>>> columnNumber: 1; El contenido no está permitido en el prólogo.] >>>> [Cppcheck] java.io.IOException: javax.xml.bind.UnmarshalException >>>> - with linked exception: >>>> [org.xml.sax.SAXParseException; systemId: >>>> file:/C:/Users/anton/.jenkins/workspace/JOB4/cppcheck.xml; lineNumber: 1; >>>> columnNumber: 1; El contenido no está permitido en el prólogo.] >>>> at &
Re: How to publish cppcheck results in a pipeline?
the supposely .xml does not have any format, these are the first 5 lines: Checking E:\Source\Game\AchievementManager.cpp ... Checking E:\Source\Game\AchievementManager.cpp: APP_STEAM;FINAL_RELEASE;_DEBUG... Checking E:\Source\Game\AchievementManager.cpp: APP_STEAM;NEED_AOE1DE_ACHIEVEMENT_TEST;_DEBUG... Checking E:\Source\Game\AchievementManager.cpp: APP_STEAM;NEED_AOE3DE_ACHIEVEMENT_TEST;_DEBUG... Checking E:\Source\Game\AchievementManager.cpp: APP_STEAM;_DEBUG... El jueves, 25 de marzo de 2021 a las 19:47:22 UTC+1, ullrich...@gmail.com escribió: > If you can’t check on your own if the file contains valid XML can you > please show the first 5 lines of the XML file here? > > Am 25.03.2021 um 19:36 schrieb jesus fernandez : > > I thought the ```bat'cppcheck "E:/Source" --force — enable=all — > inconclusive — xml — xml-version=2 . 2 > cppcheck.xml'``` command does > genearate a valid xml. is it a matter of missing parameters or a matter of > having to parse the output? in the documentation and the SO link I attached > it is supposed to be done like that... what am I missing here? > > El jueves, 25 de marzo de 2021 a las 18:21:38 UTC+1, ullrich...@gmail.com > escribió: > >> The exception says it is not a valid XML file. Is it a valid XML file? >> Seems that there is content before the fir XML tag. Can you open it in an >> editor that can validate the XML? >> >> Am 25.03.2021 um 17:57 schrieb jesus fernandez : >> >> Thanks for replying, I have opened and it has 2000 lines of code but I do >> not know if it is valid or not as I have never used cppcheck before, and if >> it is not valid is it because I am not using the right parameters when >> calling cppcheck or how? >> >> >> >> El jueves, 25 de marzo de 2021 a las 17:44:44 UTC+1, ullrich...@gmail.com >> escribió: >> >>> It look like your create XML is not valid. Can you please open the XML >>> file and check? >>> >>> Am 25.03.2021 um 17:40 schrieb jesus fernandez : >>> >>> I am learning about Jenkins on my own, and I wanted to try the cppcheck >>> plugin, I have setup the following sample pipeline: >>> ``` >>> pipeline { >>> agent any >>> >>> stages { >>> stage('analysis') { >>> steps { >>> script{ >>> bat'cppcheck "E:/Source" --force — enable=all — >>> inconclusive — xml — xml-version=2 . 2 > cppcheck.xml' >>> } >>> } >>> } >>> } >>> post { >>> always { >>> // scanForIssues tool: cppCheck(pattern: 'cppcheck.xml') >>> publishCppcheck pattern:'cppcheck.xml' >>> } >>> } >>> } >>> ``` >>> >>> But I get an error in the post step which I do not know if it is related >>> to my projecto or if I am doing something wrong. I have follow the >>> instructions on this thread [cppcheck][1]but it does not seem to work, >>> wehther I use ```publushCppcheck``` : >>> ``` >>> [Pipeline] { (Declarative: Post Actions) >>> [Pipeline] publishCppcheck (hide) >>> [Cppcheck] Starting the cppcheck analysis. >>> [Cppcheck] Processing 1 files with the pattern 'cppcheck.xml'. >>> [Cppcheck] Parsing throws exceptions. javax.xml.bind.UnmarshalException >>> - with linked exception: >>> [org.xml.sax.SAXParseException; systemId: >>> file:/C:/Users/anton/.jenkins/workspace/JOB4/cppcheck.xml; lineNumber: 1; >>> columnNumber: 1; El contenido no está permitido en el prólogo.] >>> [Cppcheck] java.io.IOException: javax.xml.bind.UnmarshalException >>> - with linked exception: >>> [org.xml.sax.SAXParseException; systemId: >>> file:/C:/Users/anton/.jenkins/workspace/JOB4/cppcheck.xml; lineNumber: 1; >>> columnNumber: 1; El contenido no está permitido en el prólogo.] >>> at >>> org.jenkinsci.plugins.cppcheck.parser.CppcheckParser.parse(CppcheckParser.java:67) >>> at >>> org.jenkinsci.plugins.cppcheck.CppcheckParserResult.invoke(CppcheckParserResult.java:69) >>> at >>> org.jenkinsci.plugins.cppcheck.CppcheckParserResult.invoke(CppcheckParserResult.java:24) >>> at hudson.FilePath.act(FilePath.java:1164) >>> at hudson.FilePath.act(FilePath.java:1147) >>> at >>> org.jenkinsci.plugins.cppcheck.CppcheckPublisher.perform(CppcheckPublisher.java:337) >>> at jenkins.tasks.Sim
Re: How to publish cppcheck results in a pipeline?
I thought the ```bat'cppcheck "E:/Source" --force — enable=all — inconclusive — xml — xml-version=2 . 2 > cppcheck.xml'``` command does genearate a valid xml. is it a matter of missing parameters or a matter of having to parse the output? in the documentation and the SO link I attached it is supposed to be done like that... what am I missing here? El jueves, 25 de marzo de 2021 a las 18:21:38 UTC+1, ullrich...@gmail.com escribió: > The exception says it is not a valid XML file. Is it a valid XML file? > Seems that there is content before the fir XML tag. Can you open it in an > editor that can validate the XML? > > Am 25.03.2021 um 17:57 schrieb jesus fernandez : > > Thanks for replying, I have opened and it has 2000 lines of code but I do > not know if it is valid or not as I have never used cppcheck before, and if > it is not valid is it because I am not using the right parameters when > calling cppcheck or how? > > > > El jueves, 25 de marzo de 2021 a las 17:44:44 UTC+1, ullrich...@gmail.com > escribió: > >> It look like your create XML is not valid. Can you please open the XML >> file and check? >> >> Am 25.03.2021 um 17:40 schrieb jesus fernandez : >> >> I am learning about Jenkins on my own, and I wanted to try the cppcheck >> plugin, I have setup the following sample pipeline: >> ``` >> pipeline { >> agent any >> >> stages { >> stage('analysis') { >> steps { >> script{ >> bat'cppcheck "E:/Source" --force — enable=all — >> inconclusive — xml — xml-version=2 . 2 > cppcheck.xml' >> } >> } >> } >> } >> post { >> always { >> // scanForIssues tool: cppCheck(pattern: 'cppcheck.xml') >> publishCppcheck pattern:'cppcheck.xml' >> } >> } >> } >> ``` >> >> But I get an error in the post step which I do not know if it is related >> to my projecto or if I am doing something wrong. I have follow the >> instructions on this thread [cppcheck][1]but it does not seem to work, >> wehther I use ```publushCppcheck``` : >> ``` >> [Pipeline] { (Declarative: Post Actions) >> [Pipeline] publishCppcheck (hide) >> [Cppcheck] Starting the cppcheck analysis. >> [Cppcheck] Processing 1 files with the pattern 'cppcheck.xml'. >> [Cppcheck] Parsing throws exceptions. javax.xml.bind.UnmarshalException >> - with linked exception: >> [org.xml.sax.SAXParseException; systemId: >> file:/C:/Users/anton/.jenkins/workspace/JOB4/cppcheck.xml; lineNumber: 1; >> columnNumber: 1; El contenido no está permitido en el prólogo.] >> [Cppcheck] java.io.IOException: javax.xml.bind.UnmarshalException >> - with linked exception: >> [org.xml.sax.SAXParseException; systemId: >> file:/C:/Users/anton/.jenkins/workspace/JOB4/cppcheck.xml; lineNumber: 1; >> columnNumber: 1; El contenido no está permitido en el prólogo.] >> at >> org.jenkinsci.plugins.cppcheck.parser.CppcheckParser.parse(CppcheckParser.java:67) >> at >> org.jenkinsci.plugins.cppcheck.CppcheckParserResult.invoke(CppcheckParserResult.java:69) >> at >> org.jenkinsci.plugins.cppcheck.CppcheckParserResult.invoke(CppcheckParserResult.java:24) >> at hudson.FilePath.act(FilePath.java:1164) >> at hudson.FilePath.act(FilePath.java:1147) >> at >> org.jenkinsci.plugins.cppcheck.CppcheckPublisher.perform(CppcheckPublisher.java:337) >> at jenkins.tasks.SimpleBuildStep.perform(SimpleBuildStep.java:123) >> at >> org.jenkinsci.plugins.workflow.steps.CoreStep$Execution.run(CoreStep.java:99) >> at >> org.jenkinsci.plugins.workflow.steps.CoreStep$Execution.run(CoreStep.java:69) >> at >> org.jenkinsci.plugins.workflow.steps.SynchronousNonBlockingStepExecution.lambda$start$0(SynchronousNonBlockingStepExecution.java:47) >> at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) >> at java.util.concurrent.FutureTask.run(Unknown Source) >> at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) >> at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) >> at java.lang.Thread.run(Unknown Source) >> Caused by: javax.xml.bind.UnmarshalException >> ``` >> >> or ```scanforIssues``` from warnings ng plugin:: >> ``` >> [Pipeline] { (Declarative: Post Actions) >> [Pipeline] scanForIssues >> [CPPCheck] [-ERROR-] Parsing of file >> 'C:\Users\anton\.jenkins\workspace\JOB4\cppche
Re: How to publish cppcheck results in a pipeline?
Thanks for replying, I have opened and it has 2000 lines of code but I do not know if it is valid or not as I have never used cppcheck before, and if it is not valid is it because I am not using the right parameters when calling cppcheck or how? El jueves, 25 de marzo de 2021 a las 17:44:44 UTC+1, ullrich...@gmail.com escribió: > It look like your create XML is not valid. Can you please open the XML > file and check? > > Am 25.03.2021 um 17:40 schrieb jesus fernandez : > > I am learning about Jenkins on my own, and I wanted to try the cppcheck > plugin, I have setup the following sample pipeline: > ``` > pipeline { > agent any > > stages { > stage('analysis') { > steps { > script{ > bat'cppcheck "E:/Source" --force — enable=all — > inconclusive — xml — xml-version=2 . 2 > cppcheck.xml' > } > } > } > } > post { > always { > // scanForIssues tool: cppCheck(pattern: 'cppcheck.xml') > publishCppcheck pattern:'cppcheck.xml' > } > } > } > ``` > > But I get an error in the post step which I do not know if it is related > to my projecto or if I am doing something wrong. I have follow the > instructions on this thread [cppcheck][1]but it does not seem to work, > wehther I use ```publushCppcheck``` : > ``` > [Pipeline] { (Declarative: Post Actions) > [Pipeline] publishCppcheck (hide) > [Cppcheck] Starting the cppcheck analysis. > [Cppcheck] Processing 1 files with the pattern 'cppcheck.xml'. > [Cppcheck] Parsing throws exceptions. javax.xml.bind.UnmarshalException > - with linked exception: > [org.xml.sax.SAXParseException; systemId: > file:/C:/Users/anton/.jenkins/workspace/JOB4/cppcheck.xml; lineNumber: 1; > columnNumber: 1; El contenido no está permitido en el prólogo.] > [Cppcheck] java.io.IOException: javax.xml.bind.UnmarshalException > - with linked exception: > [org.xml.sax.SAXParseException; systemId: > file:/C:/Users/anton/.jenkins/workspace/JOB4/cppcheck.xml; lineNumber: 1; > columnNumber: 1; El contenido no está permitido en el prólogo.] > at > org.jenkinsci.plugins.cppcheck.parser.CppcheckParser.parse(CppcheckParser.java:67) > at > org.jenkinsci.plugins.cppcheck.CppcheckParserResult.invoke(CppcheckParserResult.java:69) > at > org.jenkinsci.plugins.cppcheck.CppcheckParserResult.invoke(CppcheckParserResult.java:24) > at hudson.FilePath.act(FilePath.java:1164) > at hudson.FilePath.act(FilePath.java:1147) > at > org.jenkinsci.plugins.cppcheck.CppcheckPublisher.perform(CppcheckPublisher.java:337) > at jenkins.tasks.SimpleBuildStep.perform(SimpleBuildStep.java:123) > at > org.jenkinsci.plugins.workflow.steps.CoreStep$Execution.run(CoreStep.java:99) > at > org.jenkinsci.plugins.workflow.steps.CoreStep$Execution.run(CoreStep.java:69) > at > org.jenkinsci.plugins.workflow.steps.SynchronousNonBlockingStepExecution.lambda$start$0(SynchronousNonBlockingStepExecution.java:47) > at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) > at java.util.concurrent.FutureTask.run(Unknown Source) > at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) > at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) > at java.lang.Thread.run(Unknown Source) > Caused by: javax.xml.bind.UnmarshalException > ``` > > or ```scanforIssues``` from warnings ng plugin:: > ``` > [Pipeline] { (Declarative: Post Actions) > [Pipeline] scanForIssues > [CPPCheck] [-ERROR-] Parsing of file > 'C:\Users\anton\.jenkins\workspace\JOB4\cppcheck.xml' failed due to an > exception: > [CPPCheck] [-ERROR-] com.ctc.wstx.exc.WstxUnexpectedCharException: > Unexpected character 'C' (code 67) in prolog; expected '<' > at [row,col {unknown-source}]: [1,1] > [CPPCheck] [-ERROR-] at [row,col {unknown-source}]: [1,1] > [CPPCheck] [-ERROR-] at > com.ctc.wstx.sr.StreamScanner.throwUnexpectedChar(StreamScanner.java:648) > [CPPCheck] [-ERROR-] at > com.ctc.wstx.sr.BasicStreamReader.nextFromProlog(BasicStreamReader.java:2047) > [CPPCheck] [-ERROR-] at > com.ctc.wstx.sr.BasicStreamReader.next(BasicStreamReader.java:1069) > [CPPCheck] [-ERROR-] at > se.bjurr.violations.lib.parsers.CPPCheckParser.parseReportOutput(CPPCheckParser.java:43) > [CPPCheck] [-ERROR-] at > edu.hm.hafner.analysis.parser.violations.AbstractViolationAdapter.parse(AbstractViolationAdapter.java:35) > [CPPCheck] [-ERROR-] at > io.jenkins.plugins.analysis.core.model.FilesScanner.aggregateIssuesOfFile(FilesScanner.java:105) > [CPPCheck] [-ERROR-] at > io.jenkins.plugins.analysi
How to publish cppcheck results in a pipeline?
I am learning about Jenkins on my own, and I wanted to try the cppcheck plugin, I have setup the following sample pipeline: ``` pipeline { agent any stages { stage('analysis') { steps { script{ bat'cppcheck "E:/Source" --force — enable=all — inconclusive — xml — xml-version=2 . 2 > cppcheck.xml' } } } } post { always { // scanForIssues tool: cppCheck(pattern: 'cppcheck.xml') publishCppcheck pattern:'cppcheck.xml' } } } ``` But I get an error in the post step which I do not know if it is related to my projecto or if I am doing something wrong. I have follow the instructions on this thread [cppcheck][1]but it does not seem to work, wehther I use ```publushCppcheck``` : ``` [Pipeline] { (Declarative: Post Actions) [Pipeline] publishCppcheck (hide) [Cppcheck] Starting the cppcheck analysis. [Cppcheck] Processing 1 files with the pattern 'cppcheck.xml'. [Cppcheck] Parsing throws exceptions. javax.xml.bind.UnmarshalException - with linked exception: [org.xml.sax.SAXParseException; systemId: file:/C:/Users/anton/.jenkins/workspace/JOB4/cppcheck.xml; lineNumber: 1; columnNumber: 1; El contenido no está permitido en el prólogo.] [Cppcheck] java.io.IOException: javax.xml.bind.UnmarshalException - with linked exception: [org.xml.sax.SAXParseException; systemId: file:/C:/Users/anton/.jenkins/workspace/JOB4/cppcheck.xml; lineNumber: 1; columnNumber: 1; El contenido no está permitido en el prólogo.] at org.jenkinsci.plugins.cppcheck.parser.CppcheckParser.parse(CppcheckParser.java:67) at org.jenkinsci.plugins.cppcheck.CppcheckParserResult.invoke(CppcheckParserResult.java:69) at org.jenkinsci.plugins.cppcheck.CppcheckParserResult.invoke(CppcheckParserResult.java:24) at hudson.FilePath.act(FilePath.java:1164) at hudson.FilePath.act(FilePath.java:1147) at org.jenkinsci.plugins.cppcheck.CppcheckPublisher.perform(CppcheckPublisher.java:337) at jenkins.tasks.SimpleBuildStep.perform(SimpleBuildStep.java:123) at org.jenkinsci.plugins.workflow.steps.CoreStep$Execution.run(CoreStep.java:99) at org.jenkinsci.plugins.workflow.steps.CoreStep$Execution.run(CoreStep.java:69) at org.jenkinsci.plugins.workflow.steps.SynchronousNonBlockingStepExecution.lambda$start$0(SynchronousNonBlockingStepExecution.java:47) at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) at java.util.concurrent.FutureTask.run(Unknown Source) at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) at java.lang.Thread.run(Unknown Source) Caused by: javax.xml.bind.UnmarshalException ``` or ```scanforIssues``` from warnings ng plugin:: ``` [Pipeline] { (Declarative: Post Actions) [Pipeline] scanForIssues [CPPCheck] [-ERROR-] Parsing of file 'C:\Users\anton\.jenkins\workspace\JOB4\cppcheck.xml' failed due to an exception: [CPPCheck] [-ERROR-] com.ctc.wstx.exc.WstxUnexpectedCharException: Unexpected character 'C' (code 67) in prolog; expected '<' at [row,col {unknown-source}]: [1,1] [CPPCheck] [-ERROR-] at [row,col {unknown-source}]: [1,1] [CPPCheck] [-ERROR-] at com.ctc.wstx.sr.StreamScanner.throwUnexpectedChar(StreamScanner.java:648) [CPPCheck] [-ERROR-] at com.ctc.wstx.sr.BasicStreamReader.nextFromProlog(BasicStreamReader.java:2047) [CPPCheck] [-ERROR-] at com.ctc.wstx.sr.BasicStreamReader.next(BasicStreamReader.java:1069) [CPPCheck] [-ERROR-] at se.bjurr.violations.lib.parsers.CPPCheckParser.parseReportOutput(CPPCheckParser.java:43) [CPPCheck] [-ERROR-] at edu.hm.hafner.analysis.parser.violations.AbstractViolationAdapter.parse(AbstractViolationAdapter.java:35) [CPPCheck] [-ERROR-] at io.jenkins.plugins.analysis.core.model.FilesScanner.aggregateIssuesOfFile(FilesScanner.java:105) [CPPCheck] [-ERROR-] at io.jenkins.plugins.analysis.core.model.FilesScanner.scanFiles(FilesScanner.java:89) [CPPCheck] [-ERROR-] at io.jenkins.plugins.analysis.core.model.FilesScanner.invoke(FilesScanner.java:72) [CPPCheck] [-ERROR-] at io.jenkins.plugins.analysis.core.model.FilesScanner.invoke(FilesScanner.java:30) [CPPCheck] [-ERROR-] at hudson.FilePath.act(FilePath.java:1164) [CPPCheck] [-ERROR-] at hudson.FilePath.act(FilePath.java:1147) [CPPCheck] [-ERROR-] at io.jenkins.plugins.analysis.core.model.ReportScanningTool.scanInWorkspace(ReportScanningTool.java:152) [CPPCheck] [-ERROR-] at io.jenkins.plugins.analysis.core.model.ReportScanningTool.scan(ReportScanningTool.java:134) [CPPCheck] [-ERROR-] at io.jenkins.plugins.analysis.core.steps.IssuesScanner.scan(IssuesScanner.java:95) [CPPCheck] [-ERROR-] at io.jenkins.plugins.analysis.core.steps.ScanForIssuesStep$Execution.run(ScanForIssuesStep.java:214) [CPPCheck] [-ERROR-] at io.jenkins.plugins.analysis.core.steps.ScanForIssuesStep$Execution.run(ScanForIssuesStep.java:175) [CPPCheck] [-ERROR-] at org.jenkinsci.plugins.workflow.steps.S
Re: how can I get the value of a global variable within a function in a pipeline?
Thanks a lot Victor, the links provided made it much clear now and the example worked just fine. You are always saving me hehe El jueves, 11 de febrero de 2021 a las 22:11:15 UTC+1, victormar...@gmail.com escribió: > You can simplify it quite a bit with the post stage event > https://www.jenkins.io/doc/book/pipeline/syntax/#post > > The example pipeline uses the post *stages* section, you can use the one > specific the stage 3 > > Another example can be found in > https://www.jenkins.io/blog/2017/02/15/declarative-notifications/ > > Environment variables within an environment section are immutable, though > you can use the script closure with the env map to set a new env variable > that can be override > > For instance: > > stage(“stage 3”) { > steps{ > script{ >env.FAILED_STAGE=env.STAGE_NAME > } > error ... > } > } > > Cheers > > > > > > See > > On Thursday, 11 February 2021 at 17:56:40 UTC jesusfern...@gmail.com > wrote: > >> >> I have a declarative pipeline with a few steps. at the end I send a message >> to slack with some statistics of the compilation times and some more >> information. I want to send in case it fails the stage at which it fails. I >> have set a global variable but the function does not seem to be able to read >> its value. This is a simplified version of what I have: >> >> ``` >> def FAILED_STAGE >> >> def sendSlackNotifcation() >> { >> if ( currentBuild.currentResult == "SUCCESS" ) { >> >> slackSend message: "${currentBuild.result}", channel: '#jenkins_bot2' >> } >> >> else { >> >> slackSend color : "#FF", message: "${FAILED_STAGE}", channel: >> '#jenkins_bot2' >> >> } >> } >> >> pipeline { >> agent any >> >> stages { >> stage('stage1') { >> steps{ >> echo "stage1" >> } >> } >> >> stage('stage2') { >> steps{ >> echo "stage2" >> } >> } >> >> stage("Stage 3") { >> steps { >> script { >> FAILED_STAGE=env.STAGE_NAME >> echo "${FAILED_STAGE}" >> error "failed for some reason." >> } >> } >> } >> } >> post { >> failure { >> sendSlackNotifcation() >> } >> } >> >> } >> ``` >> And this is the output I get: >> ``` >> 13:38:53 [Pipeline] { >> 13:38:53 [Pipeline] stage >> 13:38:53 [Pipeline] { (stage1) >> 13:38:53 [Pipeline] echo >> 13:38:53 stage1 >> 13:38:53 [Pipeline] } >> 13:38:53 [Pipeline] // stage >> 13:38:53 [Pipeline] stage >> 13:38:53 [Pipeline] { (stage2) >> 13:38:53 [Pipeline] echo >> 13:38:53 stage2 >> 13:38:53 [Pipeline] } >> 13:38:53 [Pipeline] // stage >> 13:38:53 [Pipeline] stage >> 13:38:53 [Pipeline] { (Stage 3) >> 13:38:53 [Pipeline] script >> 13:38:53 [Pipeline] { >> 13:38:53 [Pipeline] echo >> 13:38:53 Stage 3 >> 13:38:53 [Pipeline] error >> 13:38:53 [Pipeline] } >> 13:38:53 [Pipeline] // script >> 13:38:53 [Pipeline] } >> 13:38:53 [Pipeline] // stage >> 13:38:53 [Pipeline] stage >> 13:38:53 [Pipeline] { (Declarative: Post Actions) >> 13:38:53 Error when executing failure post condition: >> >> 13:38:53 groovy.lang.MissingPropertyException: No such property: >> FAILED_STAGE for class: WorkflowScript >> ``` >> > -- You received this message because you are subscribed to the Google Groups "Jenkins Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-users+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-users/16c44a41-f7a2-4c4e-94d3-c820bebdf138n%40googlegroups.com.
how can I get the value of a global variable within a function in a pipeline?
I have a declarative pipeline with a few steps. at the end I send a message to slack with some statistics of the compilation times and some more information. I want to send in case it fails the stage at which it fails. I have set a global variable but the function does not seem to be able to read its value. This is a simplified version of what I have: ``` def FAILED_STAGE def sendSlackNotifcation() { if ( currentBuild.currentResult == "SUCCESS" ) { slackSend message: "${currentBuild.result}", channel: '#jenkins_bot2' } else { slackSend color : "#FF", message: "${FAILED_STAGE}", channel: '#jenkins_bot2' } } pipeline { agent any stages { stage('stage1') { steps{ echo "stage1" } } stage('stage2') { steps{ echo "stage2" } } stage("Stage 3") { steps { script { FAILED_STAGE=env.STAGE_NAME echo "${FAILED_STAGE}" error "failed for some reason." } } } } post { failure { sendSlackNotifcation() } } } ``` And this is the output I get: ``` 13:38:53 [Pipeline] { 13:38:53 [Pipeline] stage 13:38:53 [Pipeline] { (stage1) 13:38:53 [Pipeline] echo 13:38:53 stage1 13:38:53 [Pipeline] } 13:38:53 [Pipeline] // stage 13:38:53 [Pipeline] stage 13:38:53 [Pipeline] { (stage2) 13:38:53 [Pipeline] echo 13:38:53 stage2 13:38:53 [Pipeline] } 13:38:53 [Pipeline] // stage 13:38:53 [Pipeline] stage 13:38:53 [Pipeline] { (Stage 3) 13:38:53 [Pipeline] script 13:38:53 [Pipeline] { 13:38:53 [Pipeline] echo 13:38:53 Stage 3 13:38:53 [Pipeline] error 13:38:53 [Pipeline] } 13:38:53 [Pipeline] // script 13:38:53 [Pipeline] } 13:38:53 [Pipeline] // stage 13:38:53 [Pipeline] stage 13:38:53 [Pipeline] { (Declarative: Post Actions) 13:38:53 Error when executing failure post condition: 13:38:53 groovy.lang.MissingPropertyException: No such property: FAILED_STAGE for class: WorkflowScript ``` -- You received this message because you are subscribed to the Google Groups "Jenkins Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-users+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-users/be75d622-ca44-47af-a06c-99464b802bbcn%40googlegroups.com.
Re: how can I get the value of a global variable within a function in a pipeline?
Thanks for replying, any example or any link where to get information about how to do so? I am a bit new to Jenkins El jueves, 11 de febrero de 2021 a las 19:11:24 UTC+1, venh...@gmail.com escribió: > Try defining it inside the "environment" stage / step. > > Regards, > Venkatesh > > > On Thu, Feb 11, 2021 at 11:26 PM jesus fernandez > wrote: > >> >> I have a declarative pipeline with a few steps. at the end I send a message >> to slack with some statistics of the compilation times and some more >> information. I want to send in case it fails the stage at which it fails. I >> have set a global variable but the function does not seem to be able to read >> its value. This is a simplified version of what I have: >> >> ``` >> def FAILED_STAGE >> >> def sendSlackNotifcation() >> { >> if ( currentBuild.currentResult == "SUCCESS" ) { >> >> slackSend message: "${currentBuild.result}", channel: '#jenkins_bot2' >> } >> >> else { >> >> slackSend color : "#FF", message: "${FAILED_STAGE}", channel: >> '#jenkins_bot2' >> >> } >> } >> >> pipeline { >> agent any >> >> stages { >> stage('stage1') { >> steps{ >> echo "stage1" >> } >> } >> >> stage('stage2') { >> steps{ >> echo "stage2" >> } >> } >> >> stage("Stage 3") { >> steps { >> script { >> FAILED_STAGE=env.STAGE_NAME >> echo "${FAILED_STAGE}" >> error "failed for some reason." >> } >> } >> } >> } >> post { >> failure { >> sendSlackNotifcation() >> } >> } >> >> } >> ``` >> And this is the output I get: >> ``` >> 13:38:53 [Pipeline] { >> 13:38:53 [Pipeline] stage >> 13:38:53 [Pipeline] { (stage1) >> 13:38:53 [Pipeline] echo >> 13:38:53 stage1 >> 13:38:53 [Pipeline] } >> 13:38:53 [Pipeline] // stage >> 13:38:53 [Pipeline] stage >> 13:38:53 [Pipeline] { (stage2) >> 13:38:53 [Pipeline] echo >> 13:38:53 stage2 >> 13:38:53 [Pipeline] } >> 13:38:53 [Pipeline] // stage >> 13:38:53 [Pipeline] stage >> 13:38:53 [Pipeline] { (Stage 3) >> 13:38:53 [Pipeline] script >> 13:38:53 [Pipeline] { >> 13:38:53 [Pipeline] echo >> 13:38:53 Stage 3 >> 13:38:53 [Pipeline] error >> 13:38:53 [Pipeline] } >> 13:38:53 [Pipeline] // script >> 13:38:53 [Pipeline] } >> 13:38:53 [Pipeline] // stage >> 13:38:53 [Pipeline] stage >> 13:38:53 [Pipeline] { (Declarative: Post Actions) >> 13:38:53 Error when executing failure post condition: >> >> 13:38:53 groovy.lang.MissingPropertyException: No such property: >> FAILED_STAGE for class: WorkflowScript >> ``` >> >> -- >> You received this message because you are subscribed to the Google Groups >> "Jenkins Users" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to jenkinsci-use...@googlegroups.com. >> To view this discussion on the web visit >> https://groups.google.com/d/msgid/jenkinsci-users/91e7dbcd-c806-4d55-bc31-bc9a9ad4057cn%40googlegroups.com >> >> <https://groups.google.com/d/msgid/jenkinsci-users/91e7dbcd-c806-4d55-bc31-bc9a9ad4057cn%40googlegroups.com?utm_medium=email&utm_source=footer> >> . >> > -- You received this message because you are subscribed to the Google Groups "Jenkins Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-users+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-users/f2756185-f00c-4bf8-a382-f7659da29ca6n%40googlegroups.com.
how can I get the value of a global variable within a function in a pipeline?
I have a declarative pipeline with a few steps. at the end I send a message to slack with some statistics of the compilation times and some more information. I want to send in case it fails the stage at which it fails. I have set a global variable but the function does not seem to be able to read its value. This is a simplified version of what I have: ``` def FAILED_STAGE def sendSlackNotifcation() { if ( currentBuild.currentResult == "SUCCESS" ) { slackSend message: "${currentBuild.result}", channel: '#jenkins_bot2' } else { slackSend color : "#FF", message: "${FAILED_STAGE}", channel: '#jenkins_bot2' } } pipeline { agent any stages { stage('stage1') { steps{ echo "stage1" } } stage('stage2') { steps{ echo "stage2" } } stage("Stage 3") { steps { script { FAILED_STAGE=env.STAGE_NAME echo "${FAILED_STAGE}" error "failed for some reason." } } } } post { failure { sendSlackNotifcation() } } } ``` And this is the output I get: ``` 13:38:53 [Pipeline] { 13:38:53 [Pipeline] stage 13:38:53 [Pipeline] { (stage1) 13:38:53 [Pipeline] echo 13:38:53 stage1 13:38:53 [Pipeline] } 13:38:53 [Pipeline] // stage 13:38:53 [Pipeline] stage 13:38:53 [Pipeline] { (stage2) 13:38:53 [Pipeline] echo 13:38:53 stage2 13:38:53 [Pipeline] } 13:38:53 [Pipeline] // stage 13:38:53 [Pipeline] stage 13:38:53 [Pipeline] { (Stage 3) 13:38:53 [Pipeline] script 13:38:53 [Pipeline] { 13:38:53 [Pipeline] echo 13:38:53 Stage 3 13:38:53 [Pipeline] error 13:38:53 [Pipeline] } 13:38:53 [Pipeline] // script 13:38:53 [Pipeline] } 13:38:53 [Pipeline] // stage 13:38:53 [Pipeline] stage 13:38:53 [Pipeline] { (Declarative: Post Actions) 13:38:53 Error when executing failure post condition: 13:38:53 groovy.lang.MissingPropertyException: No such property: FAILED_STAGE for class: WorkflowScript ``` -- You received this message because you are subscribed to the Google Groups "Jenkins Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-users+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-users/91e7dbcd-c806-4d55-bc31-bc9a9ad4057cn%40googlegroups.com.
I get an error when trying to iterate a xml file in jenkins pipeline
I am trying to understand how to iterate a .xml file in Jenkins so I create a super simple .xml file: ``` hello bye ``` I just want to get acces to a tag value (i.e. tag3) and print it out. I have been reading a lot here on SO and I this is the cod I have: ``` import groovy.xml.* pipeline { agent any stages { stage('find') { steps { script{ def xml = readFile "C:\\Users\\anton\\Desktop\\test.xml" def file = new XmlSlurper().parseTest(xml) file.'**'. findAll { it.name() == 'tag1' } .each {println it.assetId.text()} } } } } } ``` But I keep getting this error: ```hudson.remoting.ProxyException: groovy.lang.MissingMethodException: No signature of method: groovy.util.XmlSlurper.parseTest() is applicable for argument types: (java.lang.String) values: [``` If I try to use XmlParser() method I get the same error too. I have followe these links [java.net.MalformedURLException: no protocol: XML][1] and it seems to work fine for him I do not find further information from that error [1]: https://stackoverflow.com/questions/23027382/java-net-malformedurlexception-no-protocol-xml -- You received this message because you are subscribed to the Google Groups "Jenkins Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-users+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-users/bd695356-0707-42fd-8252-8ab4c5f7ab28n%40googlegroups.com.
how to get the last commiter in jenkins pipeline
I have a Jenkins pipeline setup that it works with Perforce as SCM I have been trying to find if it is possible to send a slack message(it is already connected to slack to send msgs to a channel on each build) / email to the person who commited in case the build fails, I have found information but all the information I find it is related to Git. Anyone knows where can I find some documentation or examples on how to do this? Thanks -- You received this message because you are subscribed to the Google Groups "Jenkins Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-users+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-users/b7492feb-0aaf-4376-a981-91eb63272953n%40googlegroups.com.
error indexing C++ .h files on sonarqube with jenkins
It is my first time using sonarqube. I am using 7.9.4 version with the community cxx plugin. I tried in a super simple project and it worked so I went for a bigger project but I keep getting this error everytime I try to build my pipeline ```Language of file 'Source\age3\abilities.h' can not be decided as the file matches patterns of both sonar.lang.patterns.c++ : **/*.cxx,**/*.cpp,**/*.cc,**/*.c,**/*.h,**/*.hxx,**/*.hpp,**/*.hh,**/*.h and sonar.lang.patterns.c : **/*.c,**/*.h``` I have tried adding the suffixes to the sonar-project.properties as follow: ``` sonar.projectKey=Boston sonar.projectName=Boston sonar.dotnet.visualStudio.solution=Age3DE.sln sonar.scm.disabled=true sonar.language=c++ sonar.c.file.suffixes=- sonar.cpp.file.suffixes=.cc,.cpp,.cxx,.c++,.hh,.hpp,.hxx,.h++,.ipp,.c,.h sonar.sources=./Source sonar.sourceEncoding=UTF-8 ``` and also adding this parameters to my pipeline with -D as: ``` stage('SonarQube analysis') { steps{ script{ def scannerHome = tool 'SonarMSBuild' withSonarQubeEnv('Sonar_Server') { bat """ ${scannerHome}\\sonar-scanner-4.4.0.2170\\bin\\sonar-scanner.bat -X -Dsonar.cpp.file.suffixes=.cc,.cpp,.cxx,.c++,.hh,.hpp,.hxx,.h++,.ipp,.c,.h -Dsonar.projectKey=Boston -Dsonar.projectName=Boston -Dsonar.sources=./Source -Dsonar.scm.disabled=true -Dsonar.language=c++ -Dsonar.sourceEncoding=UTF-8 """ } } } } ``` I have also addedh the .h extension on the sonarqune UI under administration -> Configuration -> C++ -> Source files suffixes, but none of them work -- You received this message because you are subscribed to the Google Groups "Jenkins Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-users+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-users/7fcbb545-975b-4d72-89f8-f3f59cf1968an%40googlegroups.com.
Re: where do I have to set the sonar-project.properties file to make sonar work in Jenkins?
6 INFO: Sensor JavaXmlSensor [java] (done) | time=0ms 00:00:04.783 11:26:43.796 INFO: Sensor VB.NET Properties [vbnet] 00:00:04.783 11:26:43.797 DEBUG: Project 'Test': Property missing: 'sonar.vbnet.analyzer.projectOutPaths'. No protobuf files will be loaded for this project. 00:00:04.783 11:26:43.797 DEBUG: Project 'Test': No Roslyn issues reports have been found. 00:00:04.783 11:26:43.797 INFO: Sensor VB.NET Properties [vbnet] (done) | time=1ms 00:00:04.783 11:26:43.800 INFO: - Run sensors on project 00:00:04.783 11:26:43.808 DEBUG: 'Generic Coverage Report' skipped because one of the required properties is missing 00:00:04.783 11:26:43.808 DEBUG: 'C#' skipped because there is no related file in current project 00:00:04.783 11:26:43.808 DEBUG: 'C# Tests Coverage Report Import' skipped because there is no related file in current project 00:00:04.783 11:26:43.808 DEBUG: '[Deprecated] C# Integration Tests Coverage Report Import' skipped because there is no related file in current project 00:00:04.783 11:26:43.809 DEBUG: 'C# Unit Test Results Import' skipped because there is no related file in current project 00:00:04.783 11:26:43.809 DEBUG: 'VB.NET' skipped because there is no related file in current project 00:00:04.783 11:26:43.809 DEBUG: 'VB.NET Tests Coverage Report Import' skipped because there is no related file in current project 00:00:04.783 11:26:43.809 DEBUG: '[Deprecated] VB.NET Integration Tests Coverage Report Import' skipped because there is no related file in current project 00:00:04.783 11:26:43.809 DEBUG: 'VB.NET Unit Test Results Import' skipped because there is no related file in current project 00:00:04.783 11:26:43.810 DEBUG: 'Java CPD Block Indexer' skipped because there is no related file in current project 00:00:04.783 11:26:43.810 DEBUG: Sensors : Zero Coverage Sensor 00:00:04.783 11:26:43.810 INFO: Sensor Zero Coverage Sensor 00:00:04.783 11:26:43.810 INFO: Sensor Zero Coverage Sensor (done) | time=0ms 00:00:04.783 11:26:43.811 INFO: SCM Publisher is disabled 00:00:04.783 11:26:43.812 INFO: CPD Executor Calculating CPD for 0 files 00:00:04.783 11:26:43.812 INFO: CPD Executor CPD calculation finished (done) | time=0ms 00:00:04.783 11:26:43.865 INFO: Analysis report generated in 52ms, dir size=82 KB 00:00:04.783 11:26:43.876 INFO: Analysis report compressed in 11ms, zip size=10 KB 00:00:04.783 11:26:43.876 INFO: Analysis report generated in C:\Users\anton\.jenkins\workspace\Boston\.scannerwork\scanner-report 00:00:04.783 11:26:43.876 DEBUG: Upload report 00:00:04.783 11:26:43.904 DEBUG: POST 200 http://localhost:9000/api/ce/submit?projectKey=Test&projectName=Test | time=27ms 00:00:04.783 11:26:43.905 INFO: Analysis report uploaded in 29ms 00:00:04.783 11:26:43.908 DEBUG: Report metadata written to C:\Users\anton\.jenkins\workspace\Boston\.scannerwork\report-task.txt 00:00:04.783 11:26:43.908 INFO: ANALYSIS SUCCESSFUL, you can browse http://localhost:9000/dashboard?id=Test 00:00:04.783 11:26:43.908 INFO: Note that you will be able to access the updated dashboard once the server has processed the submitted analysis report 00:00:04.783 11:26:43.908 INFO: More about the report processing at http://localhost:9000/api/ce/task?id=AXW7_kI9-biCFHpn-C-1 00:00:04.784 11:26:43.910 DEBUG: Post-jobs : Final report 00:00:04.784 11:26:43.910 INFO: Executing post-job 'Final report' 00:00:04.784 11:26:43.915 INFO: Analysis total time: 2.280 s 00:00:04.784 11:26:43.916 INFO: 00:00:04.784 11:26:43.916 INFO: EXECUTION SUCCESS 00:00:04.784 11:26:43.916 INFO: 00:00:04.784 11:26:43.917 INFO: Total time: 3.517s 00:00:04.784 11:26:43.989 INFO: Final Memory: 21M/542M 00:00:04.784 11:26:43.989 INFO: El jueves, 12 de noviembre de 2020 a las 11:26:26 UTC+1, jesus fernandez escribió: > Thanks both for answering, David I have tried both with "-D" with and > without spaces. Geoffroy I was running a 8++ version I just downloaded 7.9 > but still the same. One question which might be silly (I had used > SonarQuebe ever before) does the pipeline needs to pull from a SCM for > sonarqube to test the code? I understood it is not necessary at the moment > I am just building a c++ project in local and then running the sonarqube > step. Is that correct? > > El jueves, 12 de noviembre de 2020 a las 9:51:20 UTC+1, > geoffroy...@gmail.com escribió: > >> Hello >> >> i would recommend to remove extra-spaces for "-D" options, this is >> incorrect syntax, and also enable debug mode (-X). >> >> As you are providing inf
Re: where do I have to set the sonar-project.properties file to make sonar work in Jenkins?
Thanks both for answering, David I have tried both with "-D" with and without spaces. Geoffroy I was running a 8++ version I just downloaded 7.9 but still the same. One question which might be silly (I had used SonarQuebe ever before) does the pipeline needs to pull from a SCM for sonarqube to test the code? I understood it is not necessary at the moment I am just building a c++ project in local and then running the sonarqube step. Is that correct? El jueves, 12 de noviembre de 2020 a las 9:51:20 UTC+1, geoffroy...@gmail.com escribió: > Hello > > i would recommend to remove extra-spaces for "-D" options, this is > incorrect syntax, and also enable debug mode (-X). > > As you are providing information using the scanner option, maybe it is > normal to see "Project root configuration file: NONE " log. Maybe setting > sonar.projectBaseDir option could help... > > Also, sonar-cxx plugin (if this is the one you are trying to use) is not > compatible with SonarQube 8.X: > https://github.com/SonarOpenCommunity/sonar-cxx/wiki/SonarQube-compatibility-matrix > > Regards > > On Thu, 12 Nov 2020 at 01:00, David Karr wrote: > >> I have never seen the "-D" command-line option used with a space between >> the option and the provided value, and the documentation never shows that >> example. >> >> On Wed, Nov 11, 2020 at 1:13 PM jesus fernandez >> wrote: >> >>> and this is the log: >>> ``` >>> *00:00:00.901* Injecting SonarQube environment variables using the >>> configuration: SonarQube2 [Pipeline] { >>> <http://localhost:8080/job/Boston/37/console#> [Pipeline] bat >>> <http://localhost:8080/job/Boston/37/console#> >>> *00:00:01.175* *00:00:01.175* >>> C:\Users\anton\.jenkins\workspace\Boston>C:\Users\anton\.jenkins\tools\hudson.plugins.sonar.MsBuildSQRunnerInstallation\Sonnar_scanner\sonar-scanner-4.4.0.2170\bin\sonar-scanner.bat >>> >>> -D sonar.projectKey=Test -D sonar.projectName=Test -D sonar.sources=. -D >>> sonar.scm.disabled=true -D sonar.language=c++ -D sonar.sourceEncoding=UTF-8 >>> *00:00:01.175* INFO: Scanner configuration file: >>> C:\Users\anton\.jenkins\tools\hudson.plugins.sonar.MsBuildSQRunnerInstallation\Sonnar_scanner\sonar-scanner-4.4.0.2170\bin\..\conf\sonar-scanner.properties >>> *00:00:01.175* INFO: Project root configuration file: NONE >>> *00:00:01.175* INFO: SonarScanner 4.4.0.2170 >>> *00:00:01.175* INFO: Java 1.8.0_261 Oracle Corporation (64-bit) >>> *00:00:01.175* INFO: Windows 10 10.0 amd64 >>> *00:00:02.090* INFO: User cache: >>> C:\WINDOWS\system32\config\systemprofile\.sonar\cache >>> *00:00:02.090* INFO: Scanner configuration file: >>> C:\Users\anton\.jenkins\tools\hudson.plugins.sonar.MsBuildSQRunnerInstallation\Sonnar_scanner\sonar-scanner-4.4.0.2170\bin\..\conf\sonar-scanner.properties >>> >>> *00:00:02.090* INFO: Project root configuration file: NONE >>> *00:00:02.090* INFO: Analyzing on SonarQube server 8.5.1 >>> *00:00:02.090* INFO: Default locale: "es_ES", source code encoding: >>> "UTF-8" >>> *00:00:02.343* WARN: SonarScanner will require Java 11 to run starting >>> in SonarQube 8.x *00:00:02.343* INFO: Load global settings >>> *00:00:02.343* INFO: Load global settings (done) | time=42ms >>> *00:00:02.343* INFO: Server id: BF41A1F2-AXWnoupqHjnRwWgEnmvK >>> *00:00:02.343* INFO: User cache: >>> C:\WINDOWS\system32\config\systemprofile\.sonar\cache >>> *00:00:02.343* INFO: Load/download plugins >>> *00:00:02.343* INFO: Load plugins index >>> *00:00:02.343* INFO: Load plugins index (done) | time=26ms >>> *00:00:02.594* INFO: Load/download plugins (done) | time=50ms >>> *00:00:02.846* INFO: Process project properties >>> *00:00:02.846* INFO: Process project properties (done) | time=7ms >>> *00:00:02.846* INFO: Execute project builders >>> *00:00:02.846* INFO: Execute project builders (done) | time=1ms >>> *00:00:02.846* INFO: Project key: Test >>> *00:00:02.846* INFO: Base dir: C:\Users\anton\.jenkins\workspace\Boston >>> *00:00:02.846* INFO: Working dir: >>> C:\Users\anton\.jenkins\workspace\Boston\.scannerwork >>> *00:00:03.097* INFO: Load project settings for component key: 'Test' >>> *00:00:03.097* INFO: Load project settings for component key: 'Test' >>> (done) | time=9ms >>> *00:00:03.097* INFO: Load quality profiles >>> *00:00:03.097* INFO: Load quality profiles (done) | time=38ms >>
Re: where do I have to set the sonar-project.properties file to make sonar work in Jenkins?
Thanks both for answering, David I have tried both with "-D" with and without spaces. Geoffroy I was running a 8++ version I just downloaded 7.9 but still the same. One question which might be silly (I had used SonarQuebe ever before) does the pipeline needs to pull from a SCM for sonarqube to test the code? I understood it is not necessary at the moment I am just building a c++ project in local and then running the sonarqube step. Is that correct? On Thursday, November 12, 2020 at 9:51:20 AM UTC+1 geoffroy...@gmail.com wrote: > Hello > > i would recommend to remove extra-spaces for "-D" options, this is > incorrect syntax, and also enable debug mode (-X). > > As you are providing information using the scanner option, maybe it is > normal to see "Project root configuration file: NONE " log. Maybe setting > sonar.projectBaseDir option could help... > > Also, sonar-cxx plugin (if this is the one you are trying to use) is not > compatible with SonarQube 8.X: > https://github.com/SonarOpenCommunity/sonar-cxx/wiki/SonarQube-compatibility-matrix > > Regards > > On Thu, 12 Nov 2020 at 01:00, David Karr wrote: > >> I have never seen the "-D" command-line option used with a space between >> the option and the provided value, and the documentation never shows that >> example. >> >> On Wed, Nov 11, 2020 at 1:13 PM jesus fernandez >> wrote: >> >>> and this is the log: >>> ``` >>> *00:00:00.901* Injecting SonarQube environment variables using the >>> configuration: SonarQube2 [Pipeline] { >>> <http://localhost:8080/job/Boston/37/console#> [Pipeline] bat >>> <http://localhost:8080/job/Boston/37/console#> >>> *00:00:01.175* *00:00:01.175* >>> C:\Users\anton\.jenkins\workspace\Boston>C:\Users\anton\.jenkins\tools\hudson.plugins.sonar.MsBuildSQRunnerInstallation\Sonnar_scanner\sonar-scanner-4.4.0.2170\bin\sonar-scanner.bat >>> >>> -D sonar.projectKey=Test -D sonar.projectName=Test -D sonar.sources=. -D >>> sonar.scm.disabled=true -D sonar.language=c++ -D sonar.sourceEncoding=UTF-8 >>> *00:00:01.175* INFO: Scanner configuration file: >>> C:\Users\anton\.jenkins\tools\hudson.plugins.sonar.MsBuildSQRunnerInstallation\Sonnar_scanner\sonar-scanner-4.4.0.2170\bin\..\conf\sonar-scanner.properties >>> *00:00:01.175* INFO: Project root configuration file: NONE >>> *00:00:01.175* INFO: SonarScanner 4.4.0.2170 >>> *00:00:01.175* INFO: Java 1.8.0_261 Oracle Corporation (64-bit) >>> *00:00:01.175* INFO: Windows 10 10.0 amd64 >>> *00:00:02.090* INFO: User cache: >>> C:\WINDOWS\system32\config\systemprofile\.sonar\cache >>> *00:00:02.090* INFO: Scanner configuration file: >>> C:\Users\anton\.jenkins\tools\hudson.plugins.sonar.MsBuildSQRunnerInstallation\Sonnar_scanner\sonar-scanner-4.4.0.2170\bin\..\conf\sonar-scanner.properties >>> >>> *00:00:02.090* INFO: Project root configuration file: NONE >>> *00:00:02.090* INFO: Analyzing on SonarQube server 8.5.1 >>> *00:00:02.090* INFO: Default locale: "es_ES", source code encoding: >>> "UTF-8" >>> *00:00:02.343* WARN: SonarScanner will require Java 11 to run starting >>> in SonarQube 8.x *00:00:02.343* INFO: Load global settings >>> *00:00:02.343* INFO: Load global settings (done) | time=42ms >>> *00:00:02.343* INFO: Server id: BF41A1F2-AXWnoupqHjnRwWgEnmvK >>> *00:00:02.343* INFO: User cache: >>> C:\WINDOWS\system32\config\systemprofile\.sonar\cache >>> *00:00:02.343* INFO: Load/download plugins >>> *00:00:02.343* INFO: Load plugins index >>> *00:00:02.343* INFO: Load plugins index (done) | time=26ms >>> *00:00:02.594* INFO: Load/download plugins (done) | time=50ms >>> *00:00:02.846* INFO: Process project properties >>> *00:00:02.846* INFO: Process project properties (done) | time=7ms >>> *00:00:02.846* INFO: Execute project builders >>> *00:00:02.846* INFO: Execute project builders (done) | time=1ms >>> *00:00:02.846* INFO: Project key: Test >>> *00:00:02.846* INFO: Base dir: C:\Users\anton\.jenkins\workspace\Boston >>> *00:00:02.846* INFO: Working dir: >>> C:\Users\anton\.jenkins\workspace\Boston\.scannerwork >>> *00:00:03.097* INFO: Load project settings for component key: 'Test' >>> *00:00:03.097* INFO: Load project settings for component key: 'Test' >>> (done) | time=9ms >>> *00:00:03.097* INFO: Load quality profiles >>> *00:00:03.097* INFO: Load quality profiles (done) | time=38ms >>> *00:00:
Re: where do I have to set the sonar-project.properties file to make sonar work in Jenkins?
http://localhost:9000/dashboard?id=Test *00:00:05.178* INFO: Note that you will be able to access the updated dashboard once the server has processed the submitted analysis report *00:00:05.178* INFO: More about the report processing at http://localhost:9000/api/ce/task?id=AXW4OGqF0bymGINu8Ui8 *00:00:05.178* INFO: Executing post-job 'Final report' *00:00:05.178* INFO: Turn debug info on to get more details (sonar-scanner -X -Dsonar.verbose=true ...). *00:00:05.178* INFO: Analysis total time: 2.676 s *00:00:05.178* INFO: *00:00:05.178* INFO: EXECUTION SUCCESS *00:00:05.178* INFO: *00:00:05.178* INFO: Total time: 4.015s *00:00:05.178* INFO: Final Memory: 24M/545M *00:00:05.178* INFO: ``` But then on the SonarQube UI it says: "The main branch has no lines of code." even though on activity I can see the task has been executed each time I run the pipeline El miércoles, 11 de noviembre de 2020 a las 22:09:21 UTC+1, jesus fernandez escribió: > Thanks Geofrroy for your answer, > > I had posted the question in the sonarsource community with no answer > already. I am using the free version with the C++ plugin which works fine > in many tutorials and videos you can find online. This is my pipeline: > ``` > pipeline > { > agent any > > options { timestamps () } > stages{ > > stage('Build'){ > steps{ > retry(2){ > script { > bat """ > "C:\\Program Files (x86)\\Microsoft Visual > Studio\\2017\\Community\\MSBuild\\15.0\\Bin\\MSBuild.exe" > "C:\\Users\\anton\\source\\repos\\WindowsProject1\\WindowsProject1.sln" > """ > } > } > } > } > > stage('SonarQube analysis') { > steps{ > script{ > def scannerHome = tool 'Sonnar_scanner' > withSonarQubeEnv('SonarQube2') { > bat """ > > ${scannerHome}\\sonar-scanner-4.4.0.2170\\bin\\sonar-scanner.bat -D > sonar.projectKey=Test -D sonar.projectName=Test -D sonar.sources=. -D > sonar.scm.disabled=true -D sonar.language=c++ -D sonar.sourceEncoding=UTF-8 > """ > } > } > } > } > } > } > > ``` > > Thanks! > > El miércoles, 11 de noviembre de 2020 a las 20:45:45 UTC+1, > geoffroy...@gmail.com escribió: > >> Hello >> you should probably ask here: https://community.sonarsource.com/ >> Are you using the paid version of SonarQube, to get C/C++ analysis >> feature? >> Also, from experience, before running any new tool analysis from Jenkins, >> it is better to first run (and debug) it locally. Sonar scanner local >> analysis is quite easy to execute, it could help you troubleshoot your >> issue. >> Last, please post your pipeline code so we can check you are properly >> running the analysis from the source folder actually containing the sonar >> properties file >> Regards >> >> On Wednesday, 11 November 2020 at 17:29:54 UTC+1 jesusfern...@gmail.com >> wrote: >> >>> Hi David, >>> >>> Thanks for your answer but I get the same result when adding the >>> parameters with -D I get the "*00:00:01.529* *INFO: Project root >>> configuration file: NONE" *message at the beginning of the log. I have >>> tried to create the helloworld simplest c++ project just to test, but I get >>> the same error, what am I missing? >>> El martes, 10 de noviembre de 2020 a las 20:41:32 UTC+1, >>> davidmic...@gmail.com escribió: >>> >>>> I believe that the mistake that most people make with running the >>>> sonarqube scan from a CI build is TRYING to define a sonarqube properties >>>> file. It's best to simply provide all of the required options on the >>>> sonar-scanner command line, using "-D". >>>> >>>> On Tue, Nov 10, 2020 at 3:44 AM jesus fernandez >>>> wrote: >>>> >>>>> I am trying to learn the basics of sonarqube, I have set it up on my >>>>> jenkins pipeline (which use
Re: where do I have to set the sonar-project.properties file to make sonar work in Jenkins?
Thanks Geofrroy for your answer, I had posted the question in the sonarsource community with no answer already. I am using the free version with the C++ plugin which works fine in many tutorials and videos you can find online. This is my pipeline: ``` pipeline { agent any options { timestamps () } stages{ stage('Build'){ steps{ retry(2){ script { bat """ "C:\\Program Files (x86)\\Microsoft Visual Studio\\2017\\Community\\MSBuild\\15.0\\Bin\\MSBuild.exe" "C:\\Users\\anton\\source\\repos\\WindowsProject1\\WindowsProject1.sln" """ } } } } stage('SonarQube analysis') { steps{ script{ def scannerHome = tool 'Sonnar_scanner' withSonarQubeEnv('SonarQube2') { bat """ ${scannerHome}\\sonar-scanner-4.4.0.2170\\bin\\sonar-scanner.bat -D sonar.projectKey=Test -D sonar.projectName=Test -D sonar.sources=. -D sonar.scm.disabled=true -D sonar.language=c++ -D sonar.sourceEncoding=UTF-8 """ } } } } } } ``` Thanks! El miércoles, 11 de noviembre de 2020 a las 20:45:45 UTC+1, geoffroy...@gmail.com escribió: > Hello > you should probably ask here: https://community.sonarsource.com/ > Are you using the paid version of SonarQube, to get C/C++ analysis feature? > Also, from experience, before running any new tool analysis from Jenkins, > it is better to first run (and debug) it locally. Sonar scanner local > analysis is quite easy to execute, it could help you troubleshoot your > issue. > Last, please post your pipeline code so we can check you are properly > running the analysis from the source folder actually containing the sonar > properties file > Regards > > On Wednesday, 11 November 2020 at 17:29:54 UTC+1 jesusfern...@gmail.com > wrote: > >> Hi David, >> >> Thanks for your answer but I get the same result when adding the >> parameters with -D I get the "*00:00:01.529* *INFO: Project root >> configuration file: NONE" *message at the beginning of the log. I have >> tried to create the helloworld simplest c++ project just to test, but I get >> the same error, what am I missing? >> El martes, 10 de noviembre de 2020 a las 20:41:32 UTC+1, >> davidmic...@gmail.com escribió: >> >>> I believe that the mistake that most people make with running the >>> sonarqube scan from a CI build is TRYING to define a sonarqube properties >>> file. It's best to simply provide all of the required options on the >>> sonar-scanner command line, using "-D". >>> >>> On Tue, Nov 10, 2020 at 3:44 AM jesus fernandez >>> wrote: >>> >>>> I am trying to learn the basics of sonarqube, I have set it up on my >>>> jenkins pipeline (which uses MSBuild to compile the project) and the set a >>>> step to execute SonarQube but after reading and watching a few tutorials >>>> and the documentation itself I think I got a bit lost as when my pipeline >>>> finishes executing I go to my SonarQube server and I my project says >>>> ```The >>>> main branch has no lines of code.```. I get the following log when running >>>> the sonarqube step on my jenkins: >>>> ``` >>>> 00:10:43.369 Injecting SonarQube environment variables using the >>>> configuration: SonarQube >>>> [Pipeline] { >>>> [Pipeline] bat >>>> 00:10:43.653 >>>> 00:10:43.653 >>>> C:\Users\anton\.jenkins\workspace\Boston>C:\Users\anton\.jenkins\tools\hudson.plugins.sonar.MsBuildSQRunnerInstallation\Sonnar_scanner\sonar-scanner-4.4.0.2170\bin\sonar-scanner.bat >>>> >>>> >>>> 00:10:43.653 INFO: Scanner configuration file: >>>> C:\Users\anton\.jenkins\tools\hudson.plugins.sonar.MsBuildSQRunnerInstallation\Sonnar_scanner\sonar-scanner-4.4.0.2170\bin\..\conf\sonar-scanner.properties >>>> 00:10:43.653 INFO: Project root configuration file: NONE >>>> 00:10:43.653 INFO: SonarScanner 4.4.0.2170 >>>> 00:10:43.653 INFO: Java 1.8.0_261 Oracle Corporation (64-bit) >>>> 00:10:43.653 INFO: Windows 10 10.0 amd64 >>>> 00:10:44.230 INFO: User cache: >>>> C:\WINDOWS\system32\config\systemprofile\.sonar\cache >>>&g
Re: where do I have to set the sonar-project.properties file to make sonar work in Jenkins?
Hi David, Thanks for your answer but I get the same result when adding the parameters with -D I get the "*00:00:01.529* *INFO: Project root configuration file: NONE" *message at the beginning of the log. I have tried to create the helloworld simplest c++ project just to test, but I get the same error, what am I missing? El martes, 10 de noviembre de 2020 a las 20:41:32 UTC+1, davidmic...@gmail.com escribió: > I believe that the mistake that most people make with running the > sonarqube scan from a CI build is TRYING to define a sonarqube properties > file. It's best to simply provide all of the required options on the > sonar-scanner command line, using "-D". > > On Tue, Nov 10, 2020 at 3:44 AM jesus fernandez > wrote: > >> I am trying to learn the basics of sonarqube, I have set it up on my >> jenkins pipeline (which uses MSBuild to compile the project) and the set a >> step to execute SonarQube but after reading and watching a few tutorials >> and the documentation itself I think I got a bit lost as when my pipeline >> finishes executing I go to my SonarQube server and I my project says ```The >> main branch has no lines of code.```. I get the following log when running >> the sonarqube step on my jenkins: >> ``` >> 00:10:43.369 Injecting SonarQube environment variables using the >> configuration: SonarQube >> [Pipeline] { >> [Pipeline] bat >> 00:10:43.653 >> 00:10:43.653 >> C:\Users\anton\.jenkins\workspace\Boston>C:\Users\anton\.jenkins\tools\hudson.plugins.sonar.MsBuildSQRunnerInstallation\Sonnar_scanner\sonar-scanner-4.4.0.2170\bin\sonar-scanner.bat >> >> >> 00:10:43.653 INFO: Scanner configuration file: >> C:\Users\anton\.jenkins\tools\hudson.plugins.sonar.MsBuildSQRunnerInstallation\Sonnar_scanner\sonar-scanner-4.4.0.2170\bin\..\conf\sonar-scanner.properties >> 00:10:43.653 INFO: Project root configuration file: NONE >> 00:10:43.653 INFO: SonarScanner 4.4.0.2170 >> 00:10:43.653 INFO: Java 1.8.0_261 Oracle Corporation (64-bit) >> 00:10:43.653 INFO: Windows 10 10.0 amd64 >> 00:10:44.230 INFO: User cache: >> C:\WINDOWS\system32\config\systemprofile\.sonar\cache >> 00:10:44.230 INFO: Scanner configuration file: >> C:\Users\anton\.jenkins\tools\hudson.plugins.sonar.MsBuildSQRunnerInstallation\Sonnar_scanner\sonar-scanner-4.4.0.2170\bin\..\conf\sonar-scanner.properties >> 00:10:44.230 INFO: Project root configuration file: NONE >> 00:10:44.230 INFO: Analyzing on SonarQube server 8.5.1 >> 00:10:44.230 INFO: Default locale: "es_ES", source code encoding: "UTF-8" >> 00:10:44.783 WARN: SonarScanner will require Java 11 to run starting in >> SonarQube 8.x >> 00:10:44.784 INFO: Load global settings >> 00:10:44.784 INFO: Load global settings (done) | time=40ms >> 00:10:44.784 INFO: Server id: BF41A1F2-AXWnoupqHjnRwWgEnmvK >> 00:10:44.784 INFO: User cache: >> C:\WINDOWS\system32\config\systemprofile\.sonar\cache >> 00:10:44.784 INFO: Load/download plugins >> 00:10:44.784 INFO: Load plugins index >> 00:10:44.784 INFO: Load plugins index (done) | time=26ms >> 00:10:44.784 INFO: Load/download plugins (done) | time=48ms >> 00:10:45.037 INFO: Process project properties >> 00:10:45.037 INFO: Process project properties (done) | time=6ms >> 00:10:45.037 INFO: Execute project builders >> 00:10:45.037 INFO: Execute project builders (done) | time=1ms >> 00:10:45.037 INFO: Project key: Boston >> 00:10:45.037 INFO: Base dir: C:\Users\anton\.jenkins\workspace\Boston >> 00:10:45.037 INFO: Working dir: >> C:\Users\anton\.jenkins\workspace\Boston\.scannerwork >> 00:10:45.301 INFO: Load project settings for component key: 'Boston' >> 00:10:45.301 INFO: Load project settings for component key: 'Boston' >> (done) | time=10ms >> 00:10:45.301 INFO: Load quality profiles >> 00:10:45.301 INFO: Load quality profiles (done) | time=27ms >> 00:10:45.301 INFO: Auto-configuring with CI 'Jenkins' >> 00:10:45.301 INFO: Load active rules >> 00:10:46.241 INFO: Load active rules (done) | time=787ms >> 00:10:46.241 INFO: Indexing files... >> 00:10:46.241 INFO: Project configuration: >> 00:10:46.241 INFO: 0 files indexed >> 00:10:46.241 INFO: - Run sensors on module Boston >> 00:10:46.241 INFO: Load metrics repository >> 00:10:46.241 INFO: Load metrics repository (done) | time=12ms >> 00:10:46.807 INFO: Sensor CSS Rules [cssfamily] >> 00:10:46.807 INFO: No CSS, PHP, HTML or VueJS files are found in the >> project. CSS analysis is skipped. >> 00:10:46.807 I
where do I have to set the sonar-project.properties file to make sonar work in Jenkins?
I am trying to learn the basics of sonarqube, I have set it up on my jenkins pipeline (which uses MSBuild to compile the project) and the set a step to execute SonarQube but after reading and watching a few tutorials and the documentation itself I think I got a bit lost as when my pipeline finishes executing I go to my SonarQube server and I my project says ```The main branch has no lines of code.```. I get the following log when running the sonarqube step on my jenkins: ``` 00:10:43.369 Injecting SonarQube environment variables using the configuration: SonarQube [Pipeline] { [Pipeline] bat 00:10:43.653 00:10:43.653 C:\Users\anton\.jenkins\workspace\Boston>C:\Users\anton\.jenkins\tools\hudson.plugins.sonar.MsBuildSQRunnerInstallation\Sonnar_scanner\sonar-scanner-4.4.0.2170\bin\sonar-scanner.bat 00:10:43.653 INFO: Scanner configuration file: C:\Users\anton\.jenkins\tools\hudson.plugins.sonar.MsBuildSQRunnerInstallation\Sonnar_scanner\sonar-scanner-4.4.0.2170\bin\..\conf\sonar-scanner.properties 00:10:43.653 INFO: Project root configuration file: NONE 00:10:43.653 INFO: SonarScanner 4.4.0.2170 00:10:43.653 INFO: Java 1.8.0_261 Oracle Corporation (64-bit) 00:10:43.653 INFO: Windows 10 10.0 amd64 00:10:44.230 INFO: User cache: C:\WINDOWS\system32\config\systemprofile\.sonar\cache 00:10:44.230 INFO: Scanner configuration file: C:\Users\anton\.jenkins\tools\hudson.plugins.sonar.MsBuildSQRunnerInstallation\Sonnar_scanner\sonar-scanner-4.4.0.2170\bin\..\conf\sonar-scanner.properties 00:10:44.230 INFO: Project root configuration file: NONE 00:10:44.230 INFO: Analyzing on SonarQube server 8.5.1 00:10:44.230 INFO: Default locale: "es_ES", source code encoding: "UTF-8" 00:10:44.783 WARN: SonarScanner will require Java 11 to run starting in SonarQube 8.x 00:10:44.784 INFO: Load global settings 00:10:44.784 INFO: Load global settings (done) | time=40ms 00:10:44.784 INFO: Server id: BF41A1F2-AXWnoupqHjnRwWgEnmvK 00:10:44.784 INFO: User cache: C:\WINDOWS\system32\config\systemprofile\.sonar\cache 00:10:44.784 INFO: Load/download plugins 00:10:44.784 INFO: Load plugins index 00:10:44.784 INFO: Load plugins index (done) | time=26ms 00:10:44.784 INFO: Load/download plugins (done) | time=48ms 00:10:45.037 INFO: Process project properties 00:10:45.037 INFO: Process project properties (done) | time=6ms 00:10:45.037 INFO: Execute project builders 00:10:45.037 INFO: Execute project builders (done) | time=1ms 00:10:45.037 INFO: Project key: Boston 00:10:45.037 INFO: Base dir: C:\Users\anton\.jenkins\workspace\Boston 00:10:45.037 INFO: Working dir: C:\Users\anton\.jenkins\workspace\Boston\.scannerwork 00:10:45.301 INFO: Load project settings for component key: 'Boston' 00:10:45.301 INFO: Load project settings for component key: 'Boston' (done) | time=10ms 00:10:45.301 INFO: Load quality profiles 00:10:45.301 INFO: Load quality profiles (done) | time=27ms 00:10:45.301 INFO: Auto-configuring with CI 'Jenkins' 00:10:45.301 INFO: Load active rules 00:10:46.241 INFO: Load active rules (done) | time=787ms 00:10:46.241 INFO: Indexing files... 00:10:46.241 INFO: Project configuration: 00:10:46.241 INFO: 0 files indexed 00:10:46.241 INFO: - Run sensors on module Boston 00:10:46.241 INFO: Load metrics repository 00:10:46.241 INFO: Load metrics repository (done) | time=12ms 00:10:46.807 INFO: Sensor CSS Rules [cssfamily] 00:10:46.807 INFO: No CSS, PHP, HTML or VueJS files are found in the project. CSS analysis is skipped. 00:10:46.807 INFO: Sensor CSS Rules [cssfamily] (done) | time=1ms 00:10:46.807 INFO: Sensor JaCoCo XML Report Importer [jacoco] 00:10:46.807 INFO: 'sonar.coverage.jacoco.xmlReportPaths' is not defined. Using default locations: target/site/jacoco/jacoco.xml,target/site/jacoco-it/jacoco.xml,build/reports/jacoco/test/jacocoTestReport.xml 00:10:46.807 INFO: No report imported, no coverage information will be imported by JaCoCo XML Report Importer 00:10:46.807 INFO: Sensor JaCoCo XML Report Importer [jacoco] (done) | time=1ms 00:10:46.807 INFO: Sensor C# Properties [csharp] 00:10:46.807 INFO: Sensor C# Properties [csharp] (done) | time=1ms 00:10:46.807 INFO: Sensor JavaXmlSensor [java] 00:10:46.807 INFO: Sensor JavaXmlSensor [java] (done) | time=0ms 00:10:46.807 INFO: Sensor VB.NET Properties [vbnet] 00:10:46.807 INFO: Sensor VB.NET Properties [vbnet] (done) | time=0ms 00:10:46.807 INFO: - Run sensors on project 00:10:46.807 INFO: Sensor Zero Coverage Sensor 00:10:46.807 INFO: Sensor Zero Coverage Sensor (done) | time=0ms 00:10:46.807 INFO: SCM Publisher is disabled 00:10:46.807 INFO: CPD Executor Calculating CPD for 0 files 00:10:46.807 INFO: CPD Executor CPD calculation finished (done) | time=0ms 00:10:46.807 INFO: Analysis report generated in 48ms, dir size=82 KB 00:10:46.807 INFO: Analysis report compressed in 10ms, zip size=10 KB 00:10:47.060 INFO: Analysis report uploaded in 26ms 00:10:47.060 INFO: ANALYSIS SUC
Re: how to add a configuration parameter with spaces on Jenkins
that worked! thanks! El viernes, 6 de noviembre de 2020 a las 15:55:26 UTC+1, victormar...@gmail.com escribió: > Did you try with escaped double quotes? Something like: > > >- bat "\"${msbuild}\" AoC/Source/project-GRDK.sln /t:Rebuild >/p:configuration=\"Release Steam D3D11\" " > > > You can also use the multilne approach to avoid the escape of double > quotes: > > >- bat """ "${msbuild}" AoC/Source/project-GRDK.sln /t:Rebuild >/p:configuration="Release Steam D3D11" """ > > > > On Friday, 6 November 2020 at 14:06:47 UTC jfern...@forgottenempires.net > wrote: > >> I have a pipeline which builds a C++ project for that I am using MSBuild, >> untill now we were using the "Final" configuration parameter, but now I >> need to switch it to "Release Steam D3D11", when I try to do that I get an >> error on Jenkins when building the project I guess it is because of the >> spaces, how can I make Jenkins to take this parameter? this is what I have >> tried: >> >> ``` >> stage('Build'){ >> steps{ >> script { >> def msbuild = tool name: 'MSBuild', type: >> 'hudson.plugins.msbuild.MsBuildInstallation' >> bat "\"${msbuild}\" AoC/Source/project-GRDK.sln >> /t:Rebuild /p:configuration=Release Steam D3D11" >> } >> } >> } >> ``` >> >> I have also tried adding ' ' to the configuration name such as : >> ``` >> bat "\"${msbuild}\" AoC/Source/project-GRDK.sln /t:Rebuild >> /p:configuration='Release Steam D3D11'" >> ``` >> but it does not work neither >> > -- You received this message because you are subscribed to the Google Groups "Jenkins Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-users+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-users/878175da-9102-4fa8-9927-c6aee49b061cn%40googlegroups.com.
how to add a configuration parameter with spaces on Jenkins
I have a pipeline which builds a C++ project for that I am using MSBuild, untill now we were using the "Final" configuration parameter, but now I need to switch it to "Release Steam D3D11", when I try to do that I get an error on Jenkins when building the project I guess it is because of the spaces, how can I make Jenkins to take this parameter? this is what I have tried: ``` stage('Build'){ steps{ script { def msbuild = tool name: 'MSBuild', type: 'hudson.plugins.msbuild.MsBuildInstallation' bat "\"${msbuild}\" AoC/Source/project-GRDK.sln /t:Rebuild /p:configuration=Release Steam D3D11" } } } ``` I have also tried adding ' ' to the configuration name such as : ``` bat "\"${msbuild}\" AoC/Source/project-GRDK.sln /t:Rebuild /p:configuration='Release Steam D3D11'" ``` but it does not work neither -- You received this message because you are subscribed to the Google Groups "Jenkins Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-users+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-users/2aa3d69f-c5ff-4dd2-9bab-2d1c8a9a5113n%40googlegroups.com.
Re: can I run a stage at a certain time within a pipeline
Gracias Victor! El viernes, 30 de octubre de 2020 a las 19:48:15 UTC+1, victormar...@gmail.com escribió: > triggeredBy within the stage context should help you: > https://www.jenkins.io/doc/book/pipeline/syntax/#when > > pipeline { >... >triggers { > cron 'H H22 * * 1-5' >} >stages { > ... > stage('deploy') { >when { triggeredBy 'TimerTrigger' } >... > } > } > } > On Saturday, 26 September 2020 at 10:55:14 UTC+1 jesusfern...@gmail.com > wrote: > >> I have a declarative pipeline with 3 stages and it is using poll SCM >> every 10 minutes (checkout, build and deploy), but I need the last step >> (deploy) to be executed just once everyday (i.e. 22 o´clock) so it keeps >> checking out and building everytime a change is submitted but it only >> deploys once a day. I have tried to use triggers cron directive within the >> stage but it does not work. I have thought to use the when directive but as >> I am new to groove I do not see how to tell jenkins "when time is 22 >> o´clock" >> >> Thanks >> > -- You received this message because you are subscribed to the Google Groups "Jenkins Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-users+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-users/320eeae1-a6be-41e3-bea7-1b5854745428n%40googlegroups.com.
Re: why my pipeline creates different workspaces?
Gracias por aclararlo ahora tiene sentido :) El viernes, 30 de octubre de 2020 a las 19:39:40 UTC+1, victormar...@gmail.com escribió: > Directories with an ampersand (like @tmp, @script, @libs, @2) are > specifically created by the pipeline internals, each one got a different > context. The ones with number are most likely related to a concurrent build > running while other previous build is still running, to avoid clashing with > accessing the same workspace > > On Thursday, 8 October 2020 at 09:50:26 UTC+1 jesusfern...@gmail.com > wrote: > >> I am quite new to Jenkins. I managed to create a simple pipeline to pull >> from perforce and build the project every commit, but I find sometimes it >> creates a different workspace such as project@2, project@tmp, project@tmp@2 >> and so on... why does this happen I have even set the customworkspace. >> Sorry if this is an obvious question. Here is my pipeline: >> >> >> pipeline >> { >> agent { >> node { >> label 'master' >> customWorkspace 'C:/Users/User/.jenkins/workspace/Project' >> } >> } >> options { timestamps () } >> >> stages{ >> stage('Get latest'){ >> steps{ >> p4sync charset: 'none', credential: 'somecredentials', >> populate: syncOnly(force: false, have: true, modtime: >> false, >> parallel: [enable: false, minbytes: '1024', minfiles: >> '1', threads: '4'], >> pin: '', quiet: true, revert: false), >> source: streamSource('//Project/main') >> } >> } >> >> stage('Build'){ >> steps{ >> script { >> def msbuild = tool name: 'MSBuild', type: >> 'hudson.plugins.msbuild.MsBuildInstallation' >> bat "\"${msbuild}\" Project/Source/age2-GRDK.sln >> /t:Rebuild" >> } >> } >> } >> } >> >> post{ >> changed{ >> mail to: 'somemail', >> subject: "Status of: ${currentBuild.fullDisplayName}", >> body: "${env.JOB_NAME} has result ${currentBuild.result}" >> } >> } >> >> } >> > -- You received this message because you are subscribed to the Google Groups "Jenkins Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-users+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-users/5b498ef0-198c-4565-85e0-a0035608bdfcn%40googlegroups.com.
How to add a configuration parameter with spaces on Jenkins
I have a pipeline which builds a C++ project for that I am using MSBuild, untill now we were using the "Final" configuration parameter, but now I need to switch it to "Release Steam D3D11", when I try to do that I get an error on Jenkins when building the project I guess it is because of the spaces, how can I make Jenkins to take this parameter? this is what I have tried: ``` stage('Build'){ steps{ script { def msbuild = tool name: 'MSBuild', type: 'hudson.plugins.msbuild.MsBuildInstallation' bat "\"${msbuild}\" AoC/Source/project-GRDK.sln /t:Rebuild /p:configuration=Release Steam D3D11" } } } ``` I have also tried adding ' ' to the configuration name such as : ``` bat "\"${msbuild}\" AoC/Source/project-GRDK.sln /t:Rebuild /p:configuration='Release Steam D3D11'" ``` but it does not work neither as I get this error: ```00:00:01.407 MSBUILD : error MSB1008: Only one project can be specif -- You received this message because you are subscribed to the Google Groups "Jenkins Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-users+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-users/459f5355-2e3f-4925-882e-c297d4f8c7d0n%40googlegroups.com.
How to run a visual studio CMD command in a pipeline?
I need to run a elevated x64 Native Tools Command Prompt fro VS 2019 command ("vcperf /start session") within my pipeline. I have tried different ways but I cannot make it work. This is what I tried last: pipeline { agent any stages { stage('test') { steps { script{ bat '"C:/ProgramData/Microsoft/Windows/Start Menu/Programs/Visual Studio 2019/Visual Studio Tools/VC/x64 Native Tools Command Prompt for VS 2019.lnk" -vcperf /start session' } } } } } but I get this output: *12:44:43* C:\Users\User\.jenkins\workspace\test>"C:/ProgramData/Microsoft/Windows/Start Menu/Programs/Visual Studio 2019/Visual Studio Tools/VC/x64 Native Tools Command Prompt for VS 2019.lnk" vcvarsall.bat x86_amd64 *12:44:43* [ERROR:vcvarsall.bat] Invalid argument found : vcvarsall.bat *12:44:43* [ERROR:vcvarsall.bat] Error in script usage. The correct usage is: *12:44:43* Syntax: *12:44:43* vcvarsall.bat [arch] [platform_type] [winsdk_version] [-vcvars_ver=vc_version] [-vcvars_spectre_libs=spectre_mode] *12:44:43* where : *12:44:43* [arch]: x86 | amd64 | x86_amd64 | x86_arm | x86_arm64 | amd64_x86 | amd64_arm | amd64_arm64 *12:44:43* [platform_type]: {empty} | store | uwp *12:44:43* [winsdk_version] : full Windows 10 SDK number (e.g. 10.0.10240.0) or "8.1" to use the Windows 8.1 SDK. *12:44:43* [vc_version] : {none} for latest installed VC++ compiler toolset | *12:44:43* "14.0" for VC++ 2015 Compiler Toolset | *1**2:44:43* "14.xx" for the latest 14.xx.y toolset installed (e.g. "14.11") | *12:44:43* "14.xx.y" for a specific full version number (e.g. "14.11.25503") *12:44:43* [spectre_mode] : {none} for libraries without spectre mitigations | *12:44:43* "spectre" for libraries with spectre mitigations *12:44:43* The store parameter sets environment variables to support Universal Windows Platform application *12:44:43* development and is an alias for 'uwp'. *12:44:43* For example: *12:44:43* vcvarsall.bat x86_amd64 *12:44:43* vcvarsall.bat x86_amd64 10.0.10240.0 *12:44:43* vcvarsall.bat x86_arm uwp 10.0.10240.0 *12:44:43* vcvarsall.bat x86_arm onecore 10.0.10240.0 -vcvars_ver=14.0 *12:44:43* vcvarsall.bat x64 8.1 *12:44:43* vcvarsall.bat x64 store 8.1 -- You received this message because you are subscribed to the Google Groups "Jenkins Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-users+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-users/e6d5397e-076d-406e-8c24-fa23a801a644n%40googlegroups.com.
why my pipeline creates different workspaces?
I am quite new to Jenkins. I managed to create a simple pipeline to pull from perforce and build the project every commit, but I find sometimes it creates a different workspace such as project@2, project@tmp, project@tmp@2 and so on... why does this happen I have even set the customworkspace. Sorry if this is an obvious question. Here is my pipeline: pipeline { agent { node { label 'master' customWorkspace 'C:/Users/User/.jenkins/workspace/Project' } } options { timestamps () } stages{ stage('Get latest'){ steps{ p4sync charset: 'none', credential: 'somecredentials', populate: syncOnly(force: false, have: true, modtime: false, parallel: [enable: false, minbytes: '1024', minfiles: '1', threads: '4'], pin: '', quiet: true, revert: false), source: streamSource('//Project/main') } } stage('Build'){ steps{ script { def msbuild = tool name: 'MSBuild', type: 'hudson.plugins.msbuild.MsBuildInstallation' bat "\"${msbuild}\" Project/Source/age2-GRDK.sln /t:Rebuild" } } } } post{ changed{ mail to: 'somemail', subject: "Status of: ${currentBuild.fullDisplayName}", body: "${env.JOB_NAME} has result ${currentBuild.result}" } } } -- You received this message because you are subscribed to the Google Groups "Jenkins Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-users+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-users/2ceec923-1c83-4dc0-bb2e-839f66eccab6n%40googlegroups.com.
can I run a stage at a certain time within a pipeline
I have a declarative pipeline with 3 stages and it is using poll SCM every 10 minutes (checkout, build and deploy), but I need the last step (deploy) to be executed just once everyday (i.e. 22 o´clock) so it keeps checking out and building everytime a change is submitted but it only deploys once a day. I have tried to use triggers cron directive within the stage but it does not work. I have thought to use the when directive but as I am new to groove I do not see how to tell jenkins "when time is 22 o´clock" Thanks -- You received this message because you are subscribed to the Google Groups "Jenkins Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-users+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-users/eeebcfd4-e1c9-4c8b-918d-05be60e26c68n%40googlegroups.com.
Re: How to reuse an existing workspace?
Thanks for answering so quickly, I saw this but I got confused as I do not use any node I just declared agent any and then the stages, I guess I could do it like this? pipeline { agent { node { label 'master' customWorkspace '/MyExistingPath' } } options { timestamps () } stages{ Thanks El jueves, 24 de septiembre de 2020 a las 16:44:23 UTC+2, Gianluca escribió: > I think you can use the "customWorkspace" option. > https://www.jenkins.io/doc/book/pipeline/syntax/ > > I use the declarative and scripted pipelines, so I don't know if there is > that option in freestyle too. > > Cheers, > Gianluca. > > > Il giorno gio 24 set 2020 alle ore 15:33 jesus fernandez < > jesusfern...@gmail.com> ha scritto: > >> I am quite new to Jenkins, I have been learning on my own, I have a >> working freestyle project that I want to convert to pipeline now, I have >> the script (at least I think) but I do not know what to add to make it use >> the existing workspace from the freestyle job so when pulling from the SCM >> does not have to download the whole project again as it is 150gb. I have >> look into the declarative pipeline documentation what I have not found >> anything on this regard >> >> -- >> You received this message because you are subscribed to the Google Groups >> "Jenkins Users" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to jenkinsci-use...@googlegroups.com. >> To view this discussion on the web visit >> https://groups.google.com/d/msgid/jenkinsci-users/2b593d9a-b949-4b81-a0a7-4b3272a01c60n%40googlegroups.com >> >> <https://groups.google.com/d/msgid/jenkinsci-users/2b593d9a-b949-4b81-a0a7-4b3272a01c60n%40googlegroups.com?utm_medium=email&utm_source=footer> >> . >> > -- You received this message because you are subscribed to the Google Groups "Jenkins Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-users+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-users/43103af6-3747-4db0-a4c6-c6c9915cbfdan%40googlegroups.com.
How to reuse an existing workspace?
I am quite new to Jenkins, I have been learning on my own, I have a working freestyle project that I want to convert to pipeline now, I have the script (at least I think) but I do not know what to add to make it use the existing workspace from the freestyle job so when pulling from the SCM does not have to download the whole project again as it is 150gb. I have look into the declarative pipeline documentation what I have not found anything on this regard -- You received this message because you are subscribed to the Google Groups "Jenkins Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-users+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-users/2b593d9a-b949-4b81-a0a7-4b3272a01c60n%40googlegroups.com.
Re: how to execute a bash script in a jenkins declarative pipeline
but what you suggested worked! probaly I need to improve my batch scripting knowledge as it is none at the moment. THANKS A LOT! El jueves, 24 de septiembre de 2020 a las 16:19:09 UTC+2, jesus fernandez escribió: > I also tried with call but I get this error: > ``` > *16:18:43* C:\Users\User\.jenkins\workspace\pipeline_test>call > C:/Users/User/.jenkins/workspace/Age_2_DE/Steam Build > Scripts/scripts/build_dev.bat *16:18:43* > 'C:/Users/User/.jenkins/workspace/Age_2_DE/Steam' is not recognized as an > internal or external command, *16:18:43* operable program or batch file. > ``` > > El jueves, 24 de septiembre de 2020 a las 16:07:28 UTC+2, Jérôme Godbout > escribió: > >> Hi, >> >> make sure to escape the path if it has spaces: >> >> bat('start “C:/Users/User/.jenkins/workspace/Project/Steam >> Build Scripts/scripts/build_dev.bat”'); >> >> >> >> Why do you need the start? Is the command return before completion or >> something? >> >> >> >> >> >> *From:* jenkins...@googlegroups.com *On >> Behalf Of *jesus fernandez >> *Sent:* September 24, 2020 8:24 AM >> *To:* Jenkins Users >> *Subject:* how to execute a bash script in a jenkins declarative pipeline >> >> >> >> I have started recently using Jenkins in windows 10. I have a freestyle >> job that sync from the SCM, build a C++ solution and then it runs a batch >> script to upload to steam. I am trying to convert it to pipeline as I >> realized reading the documentation how much more powerful it is. My problem >> is that on the step to run the .bat file it gets stuck forever, this is the >> step: >> >> ``` >> >> ... >> >> Stage('batch script'){ >> >> steps{ >> >> bat 'start C:/Users/User/.jenkins/workspace/Project/Steam >> Build >> >> Scripts/scripts/build_dev.bat' >> >> } >> >> } >> >> ... >> >> ``` >> >> >> >> and this is the simple .bat file: >> >> ``` >> >> "C:\Users\User\.jenkins\workspace\Project\Steam Build >> Scripts\builder\steamcmd.exe" +login "someUser" "somePassword" >> +run_app_build "C:\Users\User\.jenkins\workspace\Project\Steam Build >> Scripts\scripts\app-build-813780-dev.vdf" +quit >> >> >> >> ``` >> >> >> >> running the same file from the freestyle job works fine like this: >> >> -- >> You received this message because you are subscribed to the Google Groups >> "Jenkins Users" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to jenkinsci-use...@googlegroups.com. >> To view this discussion on the web visit >> https://groups.google.com/d/msgid/jenkinsci-users/e9a2b099-812c-4cb3-a459-f874e455n%40googlegroups.com >> >> <https://groups.google.com/d/msgid/jenkinsci-users/e9a2b099-812c-4cb3-a459-f874e455n%40googlegroups.com?utm_medium=email&utm_source=footer> >> . >> > -- You received this message because you are subscribed to the Google Groups "Jenkins Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-users+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-users/f8b508ad-2d67-49e3-aab7-0451c525cb4en%40googlegroups.com.
Re: how to execute a bash script in a jenkins declarative pipeline
I also tried with call but I get this error: ``` *16:18:43* C:\Users\User\.jenkins\workspace\pipeline_test>call C:/Users/User/.jenkins/workspace/Age_2_DE/Steam Build Scripts/scripts/build_dev.bat *16:18:43* 'C:/Users/User/.jenkins/workspace/Age_2_DE/Steam' is not recognized as an internal or external command, *16:18:43* operable program or batch file. ``` El jueves, 24 de septiembre de 2020 a las 16:07:28 UTC+2, Jérôme Godbout escribió: > Hi, > > make sure to escape the path if it has spaces: > > bat('start “C:/Users/User/.jenkins/workspace/Project/Steam > Build Scripts/scripts/build_dev.bat”'); > > > > Why do you need the start? Is the command return before completion or > something? > > > > > > *From:* jenkins...@googlegroups.com *On > Behalf Of *jesus fernandez > *Sent:* September 24, 2020 8:24 AM > *To:* Jenkins Users > *Subject:* how to execute a bash script in a jenkins declarative pipeline > > > > I have started recently using Jenkins in windows 10. I have a freestyle > job that sync from the SCM, build a C++ solution and then it runs a batch > script to upload to steam. I am trying to convert it to pipeline as I > realized reading the documentation how much more powerful it is. My problem > is that on the step to run the .bat file it gets stuck forever, this is the > step: > > ``` > > ... > > Stage('batch script'){ > > steps{ > > bat 'start C:/Users/User/.jenkins/workspace/Project/Steam > Build > > Scripts/scripts/build_dev.bat' > > } > > } > > ... > > ``` > > > > and this is the simple .bat file: > > ``` > > "C:\Users\User\.jenkins\workspace\Project\Steam Build > Scripts\builder\steamcmd.exe" +login "someUser" "somePassword" > +run_app_build "C:\Users\User\.jenkins\workspace\Project\Steam Build > Scripts\scripts\app-build-813780-dev.vdf" +quit > > > > ``` > > > > running the same file from the freestyle job works fine like this: > > -- > You received this message because you are subscribed to the Google Groups > "Jenkins Users" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to jenkinsci-use...@googlegroups.com. > To view this discussion on the web visit > https://groups.google.com/d/msgid/jenkinsci-users/e9a2b099-812c-4cb3-a459-f874e455n%40googlegroups.com > > <https://groups.google.com/d/msgid/jenkinsci-users/e9a2b099-812c-4cb3-a459-f874e455n%40googlegroups.com?utm_medium=email&utm_source=footer> > . > -- You received this message because you are subscribed to the Google Groups "Jenkins Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-users+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-users/c8fe5bae-54a6-4512-aa09-c2846b0c59bcn%40googlegroups.com.
how to execute a bash script in a jenkins declarative pipeline
I have started recently using Jenkins in windows 10. I have a freestyle job that sync from the SCM, build a C++ solution and then it runs a batch script to upload to steam. I am trying to convert it to pipeline as I realized reading the documentation how much more powerful it is. My problem is that on the step to run the .bat file it gets stuck forever, this is the step: ``` ... Stage('batch script'){ steps{ bat 'start C:/Users/User/.jenkins/workspace/Project/Steam Build Scripts/scripts/build_dev.bat' } } ... ``` and this is the simple .bat file: ``` "C:\Users\User\.jenkins\workspace\Project\Steam Build Scripts\builder\steamcmd.exe" +login "someUser" "somePassword" +run_app_build "C:\Users\User\.jenkins\workspace\Project\Steam Build Scripts\scripts\app-build-813780-dev.vdf" +quit ``` running the same file from the freestyle job works fine like this:[image: 10IC9 (1).png] -- You received this message because you are subscribed to the Google Groups "Jenkins Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-users+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-users/e9a2b099-812c-4cb3-a459-f874e455n%40googlegroups.com.