public AggregatedTestResultAction getAggregatedTestResultAction() { MatrixBuild b = getLastCompletedBuild(); return b != null ? b.getAction(AggregatedTestResultAction.class) : null; }
@Override public void onLoad(Run<?, ?> r) { if (r instanceof MatrixRun) { MatrixRun run = (MatrixRun) r; ParametersAction action = run.getParentBuild().getAction(ParametersAction.class); if (action != null) { // Parameters of build and its runs are guaranteed to be the same. Even the actual instances are the same // until it gets (re)loaded from disk when the parameters reside in memory 1+N times squandering memory. // This populates now volatile collection with parameters shared between the build and all its runs bringing // the space complexity back to 1. parameters = action.getParameters(); } else { parameters = Collections.emptyList(); } } }
private void scheduleConfigurationBuild(PrintStream logger, MatrixConfiguration c) { logger.println(Messages.MatrixBuild_Triggering(c.getDisplayName())); c.scheduleBuild(getAction(ParametersAction.class), new UpstreamCause(MatrixBuild.this)); }
private void scheduleConfigurationBuild(PrintStream logger, MatrixConfiguration c) { logger.println(Messages.MatrixBuild_Triggering(c.getDisplayName())); c.scheduleBuild(getAction(ParametersAction.class), new UpstreamCause(MatrixBuild.this)); }
private void scheduleConfigurationBuild(PrintStream logger, MatrixConfiguration c) { logger.println(Messages.MatrixBuild_Triggering(c.getDisplayName())); c.scheduleBuild(getAction(ParametersAction.class), new UpstreamCause(MatrixBuild.this)); }
private void scheduleConfigurationBuild(PrintStream logger, MatrixConfiguration c) { logger.println(Messages.MatrixBuild_Triggering(c.getDisplayName())); c.scheduleBuild(getAction(ParametersAction.class), new UpstreamCause(MatrixBuild.this)); }
private String getRevToBuild(AbstractBuild<?, ?> build, EnvVars env) { String revToBuild = getBranch(env); if (build instanceof MatrixRun) { MatrixRun matrixRun = (MatrixRun) build; MercurialTagAction parentRevision = matrixRun.getParentBuild().getAction(MercurialTagAction.class); if (parentRevision != null && parentRevision.getId() != null) { revToBuild = parentRevision.getId(); } } return revToBuild; }
private Binding getConfiguredBinding(final MatrixBuildExecution execution) { final Binding binding = new Binding(); final ParametersAction parameters = execution.getBuild().getAction(ParametersAction.class); if (parameters == null) return binding; for (final ParameterValue pv: parameters) { if (pv == null) continue; final String name = pv.getName(); final String value = pv.createVariableResolver(execution.getBuild()).resolve(name); binding.setVariable(name, value); } return binding; }
private String getRevToBuild(Run<?, ?> build, FilePath workspace, EnvVars env) { String revToBuild = getRevision(env); if (build instanceof MatrixRun) { MatrixRun matrixRun = (MatrixRun) build; MercurialTagAction parentRevision = null; final Jenkins jenkins = Jenkins.getInstance(); if (jenkins != null && jenkins.getPlugin("multiple-scms") != null) { MultiSCMRevisionState parentRevisions = matrixRun.getParentBuild().getAction(MultiSCMRevisionState.class); if (parentRevisions != null) { SCMRevisionState _parentRevisions = parentRevisions.get(this, workspace, (MatrixRun) build); if (_parentRevisions instanceof MercurialTagAction) { parentRevision = (MercurialTagAction)_parentRevisions; } // otherwise fall-back to the default behavior } if (parentRevisions == null) { parentRevision = matrixRun.getParentBuild().getAction(MercurialTagAction.class); } } else { parentRevision = matrixRun.getParentBuild().getAction(MercurialTagAction.class); } if (parentRevision != null && parentRevision.getId() != null) { revToBuild = parentRevision.getId(); } } return revToBuild; }
public boolean doBuildConfiguration(MatrixBuild b, MatrixConfiguration c) { MatrixSubsetAction a = b.getAction(MatrixSubsetAction.class); if (a==null) return true; // run the filter and restrict the subset to run return c.getCombination().evalScriptExpression(b.getParent().getAxes(), a.getFilter()); }
@Override public boolean doBuildConfiguration(MatrixBuild b, MatrixConfiguration c) { MatrixSubsetAction a = b.getAction(MatrixSubsetAction.class); if (a==null) return true; // run the filter and restrict the subset to run return c.getCombination().evalGroovyExpression(b.getParent().getAxes(),a.getFilter()); } }
MatrixBuild parentBuild = ((MatrixRun) build).getParentBuild(); if (parentBuild != null) { BuildData parentBuildData = parentBuild.getAction(BuildData.class); if (parentBuildData != null) { tempParentLastBuiltRev = parentBuildData.getLastBuiltRevision();
MatrixBuild parentBuild = ((MatrixRun) build).getParentBuild(); if (parentBuild != null) { BuildData parentBuildData = parentBuild.getAction(BuildData.class); if (parentBuildData != null) { tempParentLastBuiltRev = parentBuildData.getLastBuiltRevision();
/** * Tests that the builds from the MatrixProject can be loaded. */ @Test @LocalData public void testMatrixBuild() { Item item = j.jenkins.getItem("matrixJob"); assertThat("Item is not a MatrixProject", item, instanceOf(MatrixProject.class)); MatrixProject proj = (MatrixProject)item; RunList<MatrixBuild> builds = proj.getBuilds(); assertNotNull(builds); assertTrue("The build list should not be empty", !builds.isEmpty()); MatrixBuild matrixBuild = proj.getFirstBuild(); assertNotNull(matrixBuild.getAction(RetriggerAction.class)); GerritManualCause cause = matrixBuild.getCause(GerritManualCause.class); assertNotNull(cause); BadgeAction action = matrixBuild.getAction(BadgeAction.class); assertNotNull(action); }