Skip to content

Commit

Permalink
Adding Valgrind Issues reporting
Browse files Browse the repository at this point in the history
Allow to use valgrindParser to report memory issues
The analytic-model already has the valgrind model. Just extend the plugin to use it.

recordIssues sourceCodeRetention: 'LAST_BUILD',
tool: Valgrind(pattern: "out/test/memcheck.xml"),
qualityGates: [[threshold: 1, type: 'TOTAL', criticality: 'FAILURE']]

Add Fix copy paste error in JavaDoc from Ullrich Hafner

Reviewed-by: Ullrich Hafner <ullrich.hafner@gmail.com>
Signed-off-by: Michael Trimarchi <michael@amarulasolutions.com>
  • Loading branch information
panicking committed Dec 25, 2024
1 parent e32a260 commit 1c1e67e
Show file tree
Hide file tree
Showing 3 changed files with 544 additions and 0 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
package io.jenkins.plugins.analysis.warnings;

import org.kohsuke.stapler.DataBoundConstructor;
import org.jenkinsci.Symbol;
import hudson.Extension;

import io.jenkins.plugins.analysis.core.model.AnalysisModelParser;
import io.jenkins.plugins.analysis.core.model.StaticAnalysisLabelProvider;
import io.jenkins.plugins.analysis.core.model.SymbolIconLabelProvider;

/**
* Provides a parser and customized messages for Valgrind.
*
* @author Michael Trimarchi
*/
public class Valgrind extends AnalysisModelParser {
private static final long serialVersionUID = 1L;
private static final String ID = "valgrind";

/** Creates a new instance of {@link Valgrind}. */
@DataBoundConstructor
public Valgrind() {
super();
// empty constructor required for stapler
}

/** Descriptor for this static analysis tool. */
@Symbol("valgrind")
@Extension
public static class Descriptor extends AnalysisModelParserDescriptor {
/** Creates the descriptor instance. */
public Descriptor() {
super(ID);
}

@Override
public StaticAnalysisLabelProvider getLabelProvider() {
return new SymbolIconLabelProvider(getId(), getDisplayName(), getDescriptionProvider(), "symbol-solid/bug-slash plugin-font-awesome-api");
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -431,6 +431,12 @@ void shouldFindAllPmdIssues() {
"A high number of imports can indicate a high degree of coupling within an object.");
}

/** Runs the Valgrind Pipeline Issues parser on output file that contains 5 issues. */
@Test
void shouldFindAllValgrindIssues() {
shouldFindIssuesOfTool(5, new Valgrind(), "valgrind.xml");
}

/** Runs the CheckStyle parser on an output file that contains 6 issues. */
@Test
void shouldFindAllCheckStyleIssues() {
Expand Down
Loading

0 comments on commit 1c1e67e

Please sign in to comment.