use of hudson.plugins.violations.ViolationsBuildAction in project violations-plugin by jenkinsci.
the class ViolationsMavenReporter method getCreateBuildAction.
private ViolationsBuildAction getCreateBuildAction(MavenBuild build) {
ViolationsBuildAction ret = build.getAction(ViolationsBuildAction.class);
if (ret == null) {
ret = new ViolationsBuildAction(build);
build.getActions().add(ret);
}
return ret;
}
use of hudson.plugins.violations.ViolationsBuildAction in project violations-plugin by jenkinsci.
the class ViolationsMavenReporter method end.
@Override
public boolean end(MavenBuild build, Launcher launcher, BuildListener listener) throws InterruptedException, IOException {
registered = false;
FilePath htmlPath = new FilePath(new File(build.getProject().getRootDir(), VIOLATIONS));
FilePath targetPath = new FilePath(new File(build.getRootDir(), VIOLATIONS));
FilePath workspace = build.getWorkspace();
if (workspace == null) {
MavenModuleSetBuild parent = build.getModuleSetBuild();
throw new IOException("No workspace for " + build + "; parent workspace: " + (parent != null ? parent.getWorkspace() : "N/A") + "; builtOnStr=" + build.getBuiltOnStr() + "; builtOn=" + build.getBuiltOn());
}
ViolationsReport report = workspace.act(new ViolationsCollector(true, targetPath, htmlPath, config));
report.setConfig(config);
report.setBuild(build);
report.setBuildResult();
ViolationsBuildAction buildAction = getCreateBuildAction(build);
buildAction.setReport(report);
return true;
}
use of hudson.plugins.violations.ViolationsBuildAction in project violations-plugin by jenkinsci.
the class ViolationsAggregatedReport method init.
private void init() {
for (MavenBuild b : mavenBuild.getModuleLastBuilds().values()) {
ViolationsBuildAction a = b.getAction(ViolationsBuildAction.class);
if (a == null || a.getReport() == null) {
continue;
}
ViolationsModuleReport r = new ViolationsModuleReport(b, a.getReport());
reports.add(r);
HealthReport x = a.getReport().getBuildHealth();
HealthReport aReport = null;
if (x != null) {
aReport = new HealthReport(x.getScore(), Messages._ViolationsAggregatedReport_HealthDescription(x.getDescription(), r.getDisplayName()));
}
if (aReport != null) {
healthReport = HealthReport.min(healthReport, aReport);
}
setConfig(a.getReport().getConfig());
Map<String, Integer> aggregatedViolations = getViolations();
for (Map.Entry<String, Integer> e : a.getReport().getViolations().entrySet()) {
int val = e.getValue();
Integer current = aggregatedViolations.get(e.getKey());
if (current == null) {
aggregatedViolations.put(e.getKey(), e.getValue());
} else {
aggregatedViolations.put(e.getKey(), val + current);
}
}
}
}
Aggregations