当前位置: 首页>>代码示例>>Java>>正文


Java Combination类代码示例

本文整理汇总了Java中hudson.matrix.Combination的典型用法代码示例。如果您正苦于以下问题:Java Combination类的具体用法?Java Combination怎么用?Java Combination使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。


Combination类属于hudson.matrix包,在下文中一共展示了Combination类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: testMatrixToMatrix

import hudson.matrix.Combination; //导入依赖的package包/类
/** Test artifact copy between matrix jobs, for artifact from matching axis */
@Test
public void testMatrixToMatrix() throws Exception {
    MatrixProject other = createMatrixArtifactProject(),
                  p = createMatrixProject();
    p.setAxes(new AxisList(new Axis("FOO", "one", "two"))); // should match other job
    p.getBuildersList().add(CopyArtifactUtil.createRunSelector(other.getName() + "/FOO=$FOO", null,
            new StatusRunSelector(StatusRunSelector.BuildStatus.STABLE), "", "", false, false, true));
    rule.assertBuildStatusSuccess(other.scheduleBuild2(0, new UserCause()).get());
    MatrixBuild b = p.scheduleBuild2(0, new UserCause()).get();
    rule.assertBuildStatusSuccess(b);
    MatrixRun r = b.getRun(new Combination(Collections.singletonMap("FOO", "one")));
    assertFile(true, "one.txt", r);
    assertFile(false, "two.txt", r);
    r = b.getRun(new Combination(Collections.singletonMap("FOO", "two")));
    assertFile(false, "one.txt", r);
    assertFile(true, "two.txt", r);
}
 
开发者ID:jenkinsci,项目名称:run-selector-plugin,代码行数:19,代码来源:CopyArtifactTest.java

示例2: getCommands

import hudson.matrix.Combination; //导入依赖的package包/类
public List<ShellCommands> getCommands(final Combination combination, final Map<String, Object> dotCiEnvVars) {
    final List<ShellCommands> allCommands = new ArrayList<>();
    final String dockerComposeContainerName = combination.get("script");
    final String projectName = (String) dotCiEnvVars.get("COMPOSE_PROJECT_NAME");
    final String fileName = getDockerComposeFileName();

    final ShellCommands shellCommands = new ShellCommands();
    shellCommands.add(BuildConfiguration.getCheckoutCommands(dotCiEnvVars));

    shellCommands.addAll(this.beforeEachSection.getCommands());
    shellCommands.addAll(this.beforeSection.getCommands());//deprecated

    shellCommands.add(String.format("docker-compose -f %s pull", fileName));


    shellCommands.addAll(this.runSection.getCommands(dockerComposeContainerName, fileName));

    shellCommands.addAll(this.afterEachSection.getCommands());
    if (!isParallelized()) {
        shellCommands.addAll(this.afterRunSection.getCommands());
    }
    allCommands.add(shellCommands);
    allCommands.add(getCleanupCommands(dockerComposeContainerName, projectName));
    return allCommands;
}
 
开发者ID:groupon,项目名称:DotCi,代码行数:26,代码来源:BuildConfiguration.java

示例3: getDynamic

import hudson.matrix.Combination; //导入依赖的package包/类
@Override
public Object getDynamic(final String token, final StaplerRequest req, final StaplerResponse rsp) {
    try {
        final Build item = getRun(Combination.fromString(token));
        if (item != null) {
            if (item.getNumber() == this.getNumber()) {
                return item;
            } else {
                // redirect the user to the correct URL
                String url = Functions.joinPath(item.getUrl(), req.getRestOfPath());
                final String qs = req.getQueryString();
                if (qs != null) {
                    url += '?' + qs;
                }
                throw HttpResponses.redirectViaContextPath(url);
            }
        }
    } catch (final IllegalArgumentException e) {
        // failed to parse the token as Combination. Must be something else
    }
    return super.getDynamic(token, req, rsp);
}
 
开发者ID:groupon,项目名称:DotCi,代码行数:23,代码来源:DynamicBuild.java

示例4: getAxisList

import hudson.matrix.Combination; //导入依赖的package包/类
@Exported
public Iterable<Map> getAxisList() {

    final Iterable<Combination> layoutList = this.build.getLayouter().list();
    final Iterable<Map> subBuildInfo = Iterables.transform(layoutList, new Function<Combination, Map>() {
        @Override
        public Map apply(@Nullable final Combination combination) {
            final HashMap subBuild = new HashMap();
            subBuild.putAll(combination);
            final hudson.model.Build run = ProcessedBuild.this.build.getRun(combination);
            subBuild.putAll(getSubBuildInfo((DbBackedBuild) run));
            return subBuild;
        }
    });

    final ArrayList<Map> subBuilds = Iterables.size(layoutList) > 1 ? Lists.newArrayList(subBuildInfo) : new ArrayList<>();
    subBuilds.add(getMainBuildInfo(this.build));
    return subBuilds;
}
 
开发者ID:groupon,项目名称:DotCi,代码行数:20,代码来源:ProcessedBuild.java

示例5: runParallelBuild

import hudson.matrix.Combination; //导入依赖的package包/类
private Result runParallelBuild(final DynamicBuild dynamicBuild, final BuildExecutionContext buildExecutionContext, final BuildConfiguration buildConfiguration, final BuildListener listener) throws IOException, InterruptedException {

        final SubBuildScheduler subBuildScheduler = new SubBuildScheduler(dynamicBuild, this, new SubBuildScheduler.SubBuildFinishListener() {
            @Override
            public void runFinished(final DynamicSubBuild subBuild) throws IOException {
                for (final DotCiPluginAdapter plugin : buildConfiguration.getPlugins()) {
                    plugin.runFinished(subBuild, dynamicBuild, listener);
                }
            }
        });

        try {
            final Iterable<Combination> axisList = buildConfiguration.getAxisList().list();
            Result runResult = subBuildScheduler.runSubBuilds(axisList, listener);
            if (runResult.equals(Result.SUCCESS)) {
                final Result afterRunResult = runAfterCommands(buildExecutionContext, listener);
                runResult = runResult.combine(afterRunResult);
            }
            dynamicBuild.setResult(runResult);
            return runResult;
        } finally {
            try {
                subBuildScheduler.cancelSubBuilds(listener.getLogger());
            } catch (final Exception e) {
                // There is nothing much we can do at this point
            }
        }
    }
 
开发者ID:groupon,项目名称:DotCi,代码行数:29,代码来源:DockerComposeBuild.java

示例6: getRun

import hudson.matrix.Combination; //导入依赖的package包/类
public Build getRun(final Combination combination) {
    for (final DynamicSubProject subProject : getAllSubProjects()) {
        if (subProject.getCombination().equals(combination)) {
            return getRunForConfiguration(subProject);
        }

    }
    return null;
}
 
开发者ID:groupon,项目名称:DotCi,代码行数:10,代码来源:DynamicBuild.java

示例7: runSubBuilds

import hudson.matrix.Combination; //导入依赖的package包/类
public Result runSubBuilds(final Iterable<Combination> subBuildCombinations, final BuildListener listener) throws InterruptedException, IOException {
        final Iterable<DynamicSubProject> subProjects = getRunSubProjects(subBuildCombinations);
        scheduleSubBuilds(subBuildCombinations, this.subBuildFinishListener, listener);
        Result r = Result.SUCCESS;
        for (final DynamicSubProject c : subProjects) {
            final CurrentBuildState runState = waitForCompletion(c, listener);
            final Result runResult = getResult(runState);
            r = r.combine(runResult);
            listener.getLogger().println("Run " + c.getName() + " finished with : " + runResult);
//            subBuildFinishListener.runFinished(c.getBuildByNumber(dynamicBuild.getNumber()) );
        }
        return r;
    }
 
开发者ID:groupon,项目名称:DotCi,代码行数:14,代码来源:SubBuildScheduler.java

示例8: scheduleSubBuilds

import hudson.matrix.Combination; //导入依赖的package包/类
protected void scheduleSubBuilds(final Iterable<Combination> subBuildCombinations, final SubBuildFinishListener subBuildFinishListener, final TaskListener listener) {
    for (final Combination subBuildCombination : subBuildCombinations) {
        final DynamicSubProject c = this.dynamicBuild.getSubProject(subBuildCombination);
        listener.getLogger().println(Messages.MatrixBuild_Triggering(ModelHyperlinkNote.encodeTo(c)));
        final List<Action> childActions = new ArrayList<>();
        childActions.addAll(Util.filter(this.dynamicBuild.getActions(), ParametersAction.class));
        childActions.add(new SubBuildExecutionAction(this.subBuildRunner, subBuildFinishListener));
        childActions.add(new ParentBuildAction(this.dynamicBuild));
        c.scheduleBuild(childActions, this.dynamicBuild.getCause());
    }
}
 
开发者ID:groupon,项目名称:DotCi,代码行数:12,代码来源:SubBuildScheduler.java

示例9: createNewSubProject

import hudson.matrix.Combination; //导入依赖的package包/类
private DynamicSubProject createNewSubProject(final Combination requestedCombination) {
    final DynamicSubProject project = new DynamicSubProject(this, requestedCombination);
    try {
        project.save();
    } catch (final IOException e) {
        throw new RuntimeException(e);
    }
    this.items.put(project.getName(), project);
    return project;
}
 
开发者ID:groupon,项目名称:DotCi,代码行数:11,代码来源:DynamicProject.java

示例10: should_parallelize_on_run

import hudson.matrix.Combination; //导入依赖的package包/类
@Test
public void should_parallelize_on_run() {
    final BuildConfiguration buildConfiguration = new BuildConfiguration(ImmutableMap.of("run", of("unit", "command", "integration", "integration")));
    final Iterable<Combination> axisList = buildConfiguration.getAxisList().list();
    Assert.assertEquals(2, Iterables.size(axisList));
    Assert.assertEquals("script=unit", Iterables.get(axisList, 0).toString());
    Assert.assertEquals("script=integration", Iterables.get(axisList, 1).toString());
}
 
开发者ID:groupon,项目名称:DotCi,代码行数:9,代码来源:BuildConfigurationTest.java

示例11: should_not_run_before_run_for_parallel_subbuild

import hudson.matrix.Combination; //导入依赖的package包/类
@Test
public void should_not_run_before_run_for_parallel_subbuild() {
    final BuildConfiguration buildConfiguration = new BuildConfiguration(ImmutableMap.of("before_run", "before_run cmd", "run", of("unit", "command", "integration", "integration")));
    final ShellCommands commands = buildConfiguration.getCommands(Combination.fromString("script=unit"), getEnvVars()).get(0);
    for (final String command : commands.getCommands()) {
        Assert.assertNotEquals("before_run cmd", command);
    }
}
 
开发者ID:groupon,项目名称:DotCi,代码行数:9,代码来源:BuildConfigurationTest.java

示例12: should_run_after_each_list

import hudson.matrix.Combination; //导入依赖的package包/类
@Test
public void should_run_after_each_list() {
    final BuildConfiguration buildConfiguration = new BuildConfiguration(ImmutableMap.of("run", of("unit", "command", "integration", "integration"), "after_each", ImmutableList.of("cmd 1", "cmd 2")));
    final ShellCommands commandList = buildConfiguration.getCommands(Combination.fromString("script=unit"), getEnvVars()).get(0);
    Assert.assertEquals("cmd 1", commandList.get(commandList.size() - 2));
    Assert.assertEquals("cmd 2", commandList.get(commandList.size() - 1));
}
 
开发者ID:groupon,项目名称:DotCi,代码行数:8,代码来源:BuildConfigurationTest.java

示例13: testProjectPreferenceForMatrix

import hudson.matrix.Combination; //导入依赖的package包/类
@Test
public void testProjectPreferenceForMatrix() throws Exception
{
    setScoringRule(new NodePreferenceScoringRule(4, 2));
    
    DumbSlave node1 = j.createOnlineSlave(LabelExpression.parseExpression("nodelabel"));
    DumbSlave node2 = j.createOnlineSlave(LabelExpression.parseExpression("nodelabel"));
    
    MatrixProject p = j.createMatrixProject();
    p.setAxes(new AxisList(
            new TextAxis("axis1", "value1")
    ));
    p.addProperty(new BuildPreferenceJobProperty(Arrays.asList(
            new BuildPreference("master", 1),
            new BuildPreference("nodelabel", 2),
            new BuildPreference(String.format("%s && nodelabel", node1.getNodeName()), 4)
    )));
    p.save();
    
    p.scheduleBuild2(0).get(BUILD_TIMEOUT, TimeUnit.SECONDS);
    
    assertEquals(1, testScoringRule.calledWorkChunkList.size());
    assertEquals(
            p.getItem(new Combination(new AxisList(new TextAxis("axis1",  "")), "value1")),
            testScoringRule.calledWorkChunkList.get(0).get(0)
    );
    assertEquals(1, testScoringRule.nodesScoreList.size());
    assertEquals(2, testScoringRule.nodesScoreList.get(0).getScore(j.jenkins));
    assertEquals(12, testScoringRule.nodesScoreList.get(0).getScore(node1));
    assertEquals(4, testScoringRule.nodesScoreList.get(0).getScore(node2));
}
 
开发者ID:ikedam,项目名称:scoring-load-balancer,代码行数:32,代码来源:NodePreferenceScoringRuleJenkinsTest.java

示例14: CombinationConverter

import hudson.matrix.Combination; //导入依赖的package包/类
public CombinationConverter() {
    super(Combination.class);
}
 
开发者ID:groupon,项目名称:DotCi,代码行数:4,代码来源:CombinationConverter.java

示例15: decode

import hudson.matrix.Combination; //导入依赖的package包/类
@Override
public Object decode(Class targetClass, Object fromDBObject, MappedField optionalExtraInfo) {
    return new Combination((Map<String, String>) fromDBObject);
}
 
开发者ID:groupon,项目名称:DotCi,代码行数:5,代码来源:CombinationConverter.java


注:本文中的hudson.matrix.Combination类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。