/** * Information about artifacts produced by Maven. */ @Exported public MavenAggregatedArtifactRecord getMavenArtifacts() { return getAction(MavenAggregatedArtifactRecord.class); }
&& moduleSetBuild.getResult() != Result.SUCCESS && moduleSetBuild.getResult() != Result.UNSTABLE) { UnbuiltModuleAction action = moduleSetBuild.getAction(UnbuiltModuleAction.class); if (action == null) { action = new UnbuiltModuleAction(); UnbuiltModuleAction unbuiltModuleAction = previousParentBuild.getAction(UnbuiltModuleAction.class); if (unbuiltModuleAction != null) { unbuiltModuleAction.removeUnbuildModule(getParent().getModuleName()); UnbuiltModuleAction action = moduleSetBuild.getAction(UnbuiltModuleAction.class); if (action == null) { action = new UnbuiltModuleAction();
public AbstractTestResultAction<?> getTestResultAction() { MavenModuleSetBuild b = getLastBuild(); return b != null ? b.getAction(AbstractTestResultAction.class) : null; }
for (BuildWrapper w : project.getBuildWrappersList()) wrappers.add(w); ParametersAction parameters = getAction(ParametersAction.class); if (parameters != null) parameters.createBuildWrappers(MavenModuleSetBuild.this,wrappers); } else if (new ComparableVersion(mavenVersion).compareTo(new ComparableVersion("2.1")) < 0) { LOGGER.log(Level.FINER, "{0} is using Maven {1} but need 2.1+ for incremental builds", new Object[] {MavenModuleSetBuild.this, mavenVersion}); } else if (getPreviousCompletedBuild() != null && getPreviousCompletedBuild().getAction(NeedsFullBuildAction.class) != null && /* PR #31 */getCause(UpstreamCause.class) != null) { LOGGER.log(Level.FINER, "{0} had a previous build asking for this one to not be incremental", MavenModuleSetBuild.this); } else {
/** * {@inheritDoc} */ public Action getProjectAction(MavenModuleSet moduleSet) { for (MavenModuleSetBuild build : moduleSet.getBuilds()) { if (build.getAction(BuildAggregatedReport.class) != null) { return new ProjectAggregatedReport(moduleSet); } } return null; }
for (BuildWrapper w : project.getBuildWrappersList()) wrappers.add(w); ParametersAction parameters = getAction(ParametersAction.class); if (parameters != null) parameters.createBuildWrappers(MavenModuleSetBuild.this,wrappers);
/** * Returns the modules which have not been build since the last successful aggregator build * though they should be because they had SCM changes. * This can happen when the aggregator build fails before it reaches the module. * * See JENKINS-5764 */ private Collection<ModuleName> getUnbuiltModulesSinceLastSuccessfulBuild() { Collection<ModuleName> unbuiltModules = new ArrayList<>(); MavenModuleSetBuild previousSuccessfulBuild = getPreviousSuccessfulBuild(); if (previousSuccessfulBuild == null) { LOGGER.log(Level.FINER, "no successful build from {0} yet; taking the first build instead", MavenModuleSetBuild.this); previousSuccessfulBuild = getParent().getFirstBuild(); } for (MavenModuleSetBuild previousBuild = previousSuccessfulBuild; previousBuild != null && previousBuild != MavenModuleSetBuild.this; previousBuild = previousBuild.getNextBuild()) { UnbuiltModuleAction unbuiltModuleAction = previousBuild.getAction(UnbuiltModuleAction.class); if (unbuiltModuleAction != null) { Collection<ModuleName> newUnbuiltModules = unbuiltModuleAction.getUnbuildModules(); LOGGER.log(Level.FINER, "considered {0} and consequently adding {1}", new Object[] {previousBuild, newUnbuiltModules}); unbuiltModules.addAll(newUnbuiltModules); } else { LOGGER.log(Level.FINER, "considered {0} but it has no list of unbuilt modules", previousBuild); } } LOGGER.log(Level.FINER, "unbuilt modules since last successful build of {0}: {1}", new Object[] {MavenModuleSetBuild.this, unbuiltModules}); return unbuiltModules; }
/** * Since aggregation is done in background we still need to log all messages * of that step to the log. * * @param build * the finished maven module build * @param launcher * the launcher * @param listener * the lister that holds the log * @return <code>true</code> */ @Override public boolean end(final MavenBuild build, final Launcher launcher, final BuildListener listener) { MavenModuleSetBuild moduleSetBuild = build.getParentBuild(); if (moduleSetBuild != null) { MavenResultAction<T> action = moduleSetBuild.getAction(getResultActionClass()); if (action != null) { listener.getLogger().append(action.getLog()); } } return true; }
/** * Since aggregation is done in background we still need to log all messages * of that step to the log. * * @param build * the finished maven module build * @param launcher * the launcher * @param listener * the lister that holds the log * @return <code>true</code> */ @Override public boolean end(final MavenBuild build, final Launcher launcher, final BuildListener listener) { MavenModuleSetBuild moduleSetBuild = build.getParentBuild(); if (moduleSetBuild != null) { MavenResultAction<T> action = moduleSetBuild.getAction(getResultActionClass()); if (action != null) { listener.getLogger().append(action.getLog()); } } return true; }