Warnings NG plugin and armclang

Hi, I want to use the Warnings NG plugin to parse build output from armclang. I have tried:

recordIssues minimumSeverity: ‘HIGH’, enabledForFailure: true, tools: [armcc(id: ‘arm-warnings’, name: ‘Arm’, pattern: ‘build_log.txt’)]

but that yields:

java.lang.NoSuchMethodError: No such DSL method ‘armcc’ found among steps

So report format ‘armcc’ seems to be invalid despite being listed here.

(Also I use report format gcc4 elsewhere but it is not listed in that table).

Does Warnings NG support armclang?

Did you try using the syntax generator on your jenkins install sidebar? It usually depends on what version you have installed and the generator will only list what is available for your installed version

The docu says armCc but you have written armcc.
Notice the first capital C.

Armcc is not the same as armclang. You probably want to use clang() instead of armCc().

Thank you for your answers. Report format ‘clang’ works fine for me.

I can’t find the Warnings NG plugin in the Snippet Generator. I must be looking in the wrong place. Could anyone point me to it please?

The step is called “Record Compiler warnings”, see warnings-ng-plugin/Documentation.md at cb7f859b8e902f32b90914cefc53b4b74c9d33b5 · jenkinsci/warnings-ng-plugin · GitHub

@uhafner Thanks for your answer. But I can’t get the Snippet Generator to generate syntax:

Clicking ‘Generate Pipeline Script’ does nothing.

There is something broken in your installation. Do the other tools like GCC, Java, etc. work?

Which versions are you using (Jenkins, plugins)?
Are there exceptions in Jenkins log when you open this screen?

Here is my output, in your output the fields below the tool ID are missing.

@uhafner I do see an error in the System Log:

Error while serving https://jenkins-sw.uktm.eu.nec.com/pipeline-syntax/generateSnippet

java.lang.IllegalArgumentException: The frontend sent an unexpected list of classes ([“io.jenkins.plugins.analysis.warnings.AcuCobol”,“io.jenkins.plugins.analysis.warnings.Gnat”,“io.jenkins.plugins.analysis.warnings.AndroidLint”,“io.jenkins.plugins.analysis.warnings.AnsibleLint”,snip,“io.jenkins.plugins.analysis.warnings.OELintAdv”]) rather than an expected single class. See Table to div layout migration for more information.

at org.kohsuke.stapler.RequestImpl$TypePair.convertJSON(RequestImpl.java:723)

Your UI looks different, which Jenkins and Plugin Versions are you using.

Jenkins 2.375.3
Warnings NG 9.23.1

I will upgrade to the latest LTS.

Also fails in the same way in the latest LTS: 2.387.1.

Further down the exception:

Caused: java.lang.IllegalArgumentException: Failed to convert the tool parameter of the constructor public io.jenkins.plugins.analysis.core.steps.ToolProxy(io.jenkins.plugins.analysis.core.model.Tool)
at org.kohsuke.stapler.RequestImpl.instantiate(RequestImpl.java:852)
at org.kohsuke.stapler.RequestImpl$TypePair.convertJSON(RequestImpl.java:741)
Caused: java.lang.IllegalArgumentException: Failed to instantiate class io.jenkins.plugins.analysis.core.steps.ToolProxy from {“”:“0”,“tool”:{“stapler-class”:

Does that give a clue? This used to work, but I know our IT proxy servers have changed. Could ‘Tool Proxy’ be associated with a network proxy?

Hmm, there must be some incompatibility in your instance. Here it works: Pipeline Syntax: Snippet Generator [Jenkins]

ToolProxy is just a design pattern I am using to speed up the UI generation :wink:

Ok, strange. The Snippet Generator works ok for me for other steps.