Search in sources :

Example 21 with Run

use of hudson.model.Run in project blueocean-plugin by jenkinsci.

the class MultiBranchPipelineImpl method countRunStatus.

private int countRunStatus(Result result, boolean pullRequests) {
    Collection<Job> jobs = mbp.getAllJobs();
    int count = 0;
    for (Job j : jobs) {
        if (pullRequests && isPullRequest(j) || !pullRequests && !isPullRequest(j)) {
            j.getBuildStatusUrl();
            Run run = j.getLastBuild();
            if (run != null && run.getResult() == result) {
                count++;
            }
        }
    }
    return count;
}
Also used : BlueRun(io.jenkins.blueocean.rest.model.BlueRun) Run(hudson.model.Run) Job(hudson.model.Job)

Example 22 with Run

use of hudson.model.Run in project violations-plugin by jenkinsci.

the class SeverityTypeDataSet method buildDataSet.

/**
     * Build the data set.
     *
     * @return the dataset.
     */
public CategoryDataset buildDataSet() {
    DataSetBuilder<Row, NumberOnlyBuildLabel> builder = new DataSetBuilder<Row, NumberOnlyBuildLabel>();
    for (ViolationsReport r = report; r != null; r = r.previous()) {
        if (r.getTypeSummaries() == null) {
            continue;
        }
        TypeSummary t = r.getTypeSummaries().get(type);
        if (t == null) {
            // Old report
            continue;
        }
        if (t.getSeverityArray() == null || t.getSeverityArray().length != Severity.NUMBER_SEVERITIES) {
            // Old report
            continue;
        }
        int[] nums = t.getSeverityArray();
        builder.add(nums[Severity.MEDIUM_VALUE] + nums[Severity.MEDIUM_HIGH_VALUE] + nums[Severity.MEDIUM_LOW_VALUE], MEDIUM_ROW, new NumberOnlyBuildLabel((Run) r.getBuild()));
        builder.add(nums[Severity.HIGH_VALUE], HIGH_ROW, new NumberOnlyBuildLabel((Run) r.getBuild()));
        builder.add(nums[Severity.LOW_VALUE], LOW_ROW, new NumberOnlyBuildLabel((Run) r.getBuild()));
    }
    return builder.build();
}
Also used : NumberOnlyBuildLabel(hudson.util.ChartUtil.NumberOnlyBuildLabel) DataSetBuilder(hudson.util.DataSetBuilder) ViolationsReport(hudson.plugins.violations.ViolationsReport) Run(hudson.model.Run) TypeSummary(hudson.plugins.violations.TypeSummary)

Example 23 with Run

use of hudson.model.Run in project blueocean-plugin by jenkinsci.

the class LinkResolverImpl method resolve.

@Override
public Link resolve(Object modelObject) {
    if (modelObject instanceof Job) {
        Resource resource = resolveJob((Job) modelObject);
        if (resource != null) {
            return resource.getLink();
        }
    } else if (modelObject instanceof Item && modelObject instanceof ItemGroup) {
        Resource resource = resolveFolder((Item) modelObject);
        if (resource != null) {
            return resource.getLink();
        }
    } else if (modelObject instanceof Run) {
        Run run = (Run) modelObject;
        Resource resource = resolveRun(run);
        if (resource != null) {
            return resource.getLink();
        }
    }
    return null;
}
Also used : Item(hudson.model.Item) ItemGroup(hudson.model.ItemGroup) Resource(io.jenkins.blueocean.rest.model.Resource) Run(hudson.model.Run) Job(hudson.model.Job)

Example 24 with Run

use of hudson.model.Run in project blueocean-plugin by jenkinsci.

the class LinkResolverTest method runLinkResolveTest.

@Test
public void runLinkResolveTest() throws IOException, ExecutionException, InterruptedException {
    Project f = j.createFreeStyleProject("fstyle1");
    MockFolder folder1 = j.createFolder("folder1");
    Project p1 = folder1.createProject(FreeStyleProject.class, "test1");
    MockFolder folder2 = folder1.createProject(MockFolder.class, "folder2");
    MockFolder folder3 = folder2.createProject(MockFolder.class, "folder3");
    Project p2 = folder2.createProject(FreeStyleProject.class, "test2");
    Project p3 = folder3.createProject(FreeStyleProject.class, "test3");
    Run r = (Run) f.scheduleBuild2(0).get();
    Assert.assertEquals("/blue/rest/organizations/jenkins/pipelines/fstyle1/runs/" + r.getId() + "/", LinkResolver.resolveLink(r).getHref());
    r = (Run) p1.scheduleBuild2(0).get();
    Assert.assertEquals("/blue/rest/organizations/jenkins/pipelines/folder1/pipelines/test1/runs/" + r.getId() + "/", LinkResolver.resolveLink(r).getHref());
    r = (Run) p2.scheduleBuild2(0).get();
    Assert.assertEquals("/blue/rest/organizations/jenkins/pipelines/folder1/pipelines/folder2/pipelines/test2/runs/" + r.getId() + "/", LinkResolver.resolveLink(r).getHref());
    r = (Run) p3.scheduleBuild2(0).get();
    Assert.assertEquals("/blue/rest/organizations/jenkins/pipelines/folder1/pipelines/folder2/pipelines/folder3/pipelines/test3/runs/" + r.getId() + "/", LinkResolver.resolveLink(r).getHref());
}
Also used : Project(hudson.model.Project) FreeStyleProject(hudson.model.FreeStyleProject) Run(hudson.model.Run) MockFolder(org.jvnet.hudson.test.MockFolder) Test(org.junit.Test)

Example 25 with Run

use of hudson.model.Run in project blueocean-plugin by jenkinsci.

the class RunSearch method findRuns.

public static Iterable<BlueRun> findRuns(Job job, final Link parent) {
    final List<BlueRun> runs = new ArrayList<>();
    Iterable<Job> pipelines;
    if (job != null) {
        pipelines = ImmutableList.of(job);
    } else {
        pipelines = Jenkins.getActiveInstance().getItems(Job.class);
    }
    for (Job p : pipelines) {
        RunList<? extends Run> runList = p.getBuilds();
        for (Run r : runList) {
            runs.add(AbstractRunImpl.getBlueRun(r, new Reachable() {

                @Override
                public Link getLink() {
                    return parent;
                }
            }));
        }
    }
    return runs;
}
Also used : BlueRun(io.jenkins.blueocean.rest.model.BlueRun) ArrayList(java.util.ArrayList) Reachable(io.jenkins.blueocean.rest.Reachable) BlueRun(io.jenkins.blueocean.rest.model.BlueRun) Run(hudson.model.Run) Job(hudson.model.Job)

Aggregations

Run (hudson.model.Run)26 FreeStyleProject (hudson.model.FreeStyleProject)5 Job (hudson.model.Job)5 Test (org.junit.Test)5 Item (hudson.model.Item)4 Shell (hudson.tasks.Shell)4 BlueRun (io.jenkins.blueocean.rest.model.BlueRun)4 Map (java.util.Map)4 WorkflowRun (org.jenkinsci.plugins.workflow.job.WorkflowRun)4 ArtifactArchiver (hudson.tasks.ArtifactArchiver)3 ArrayList (java.util.ArrayList)3 AbstractProject (hudson.model.AbstractProject)2 ViolationsReport (hudson.plugins.violations.ViolationsReport)2 DataSetBuilder (hudson.util.DataSetBuilder)2 IOException (java.io.IOException)2 Nonnull (javax.annotation.Nonnull)2 MultiBranchProject (jenkins.branch.MultiBranchProject)2 Jenkins (jenkins.model.Jenkins)2 WorkflowJob (org.jenkinsci.plugins.workflow.job.WorkflowJob)2 Ancestor (org.kohsuke.stapler.Ancestor)2