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


Java JobWithDetails类代码示例

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


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

示例1: waitForBuildToComplete

import com.offbytwo.jenkins.model.JobWithDetails; //导入依赖的package包/类
/**
 * Wait for the build to be queued and complete
 *
 * @param jenkins          Jenkins server instance
 * @param expectedBuildNbr the build number we're are expecting
 * @param timeOut          the maximum time in millisecond we are waiting
 * @throws InterruptedException the build was interrupted
 * @throws TimeoutException     we exeeded the timeout period.
 * @throws IOException          an unexpected error occurred while communicating with Jenkins
 */
private void waitForBuildToComplete(JenkinsServer jenkins, int expectedBuildNbr, long timeOut) throws InterruptedException, TimeoutException, IOException {
    boolean buildCompleted = false;
    Long timeoutCounter = 0L;
    while (!buildCompleted) {
        Thread.sleep(2000);
        timeoutCounter = timeoutCounter + 2000L;
        if (timeoutCounter > timeOut) {
            throw new TimeoutException("The job did not complete in the expected time");
        }
        //When the build is in the queue, the nextbuild number didn't change.
        //When it changed, It might still be running.
        JobWithDetails wrkJobData = jenkins.getJob(JENKINS_JOB_NAME);
        int newNextNbr = wrkJobData.getNextBuildNumber();
        log.info("New Next Nbr:" + newNextNbr);
        if (expectedBuildNbr != newNextNbr) {
            log.info("The expected build is there");
            boolean isBuilding = wrkJobData.getLastBuild().details().isBuilding();
            if (!isBuilding) {
                buildCompleted = true;
            }
        }
    }
}
 
开发者ID:jenkinsci,项目名称:gogs-webhook-plugin,代码行数:34,代码来源:GogsWebHook_IT.java

示例2: testCreateJob

import com.offbytwo.jenkins.model.JobWithDetails; //导入依赖的package包/类
@Test
public void testCreateJob() throws Exception {
    final String sourceJob = "pr";
    final String jobName = "test-job-" + UUID.randomUUID().toString();

    String sourceXml = server.getJobXml(sourceJob);

    server.createJob(jobName, sourceXml);

    Map<String, Job> jobs = server.getJobs();
    assertTrue(jobs.containsKey(jobName));
    JobWithDetails thisJob = jobs.get(jobName).details();
    assertNotNull(thisJob);
    assertTrue(thisJob.getBuilds().size() == 0);
    thisJob.build(ImmutableMap.of("foo_param", "MUST_PROVIDE_VALUES_DEFAULTS_DONT_WORK"));

    // wait to see if the job finishes, but with a timeout
    Future<Void> future = executor.submit(new PerformPollingTest(server, jobName));

    // If this times out, either jenkins is slow or our test failed!
    // IME, usually takes about 10-15 seconds
    future.get(30, TimeUnit.SECONDS);

    Build b = server.getJobs().get(jobName).details().getLastSuccessfulBuild();
    assertTrue(b != null);
}
 
开发者ID:Verigreen,项目名称:verigreen,代码行数:27,代码来源:JenkinsServerIntegration.java

示例3: testStopBuildById

import com.offbytwo.jenkins.model.JobWithDetails; //导入依赖的package包/类
@Test
public void testStopBuildById() throws IOException, InterruptedException {
    
    String jobName = "testing-jenkins-api";
    String parameterNameForJob = "ParamForTesting";
    final ImmutableMap<String, String> params = ImmutableMap.of(parameterNameForJob, "master");
    
    BuildVerifier buildVerifier = CollectorApi.getJenkinsVerifier();
    JenkinsServer jenkninsServer = CollectorApi.getJenkinsServer();
    JobWithDetails job = jenkninsServer.getJob(jobName);
    int nextBuildNumber = job.getNextBuildNumber();
    job.build(params);
    Thread.sleep(5000);
    boolean stopBuildResult =
            ((JenkinsVerifier) buildVerifier).stop(jobName, Integer.toString(nextBuildNumber));
    Assert.assertEquals(true, stopBuildResult);
}
 
开发者ID:Verigreen,项目名称:verigreen,代码行数:18,代码来源:TestJenkinsVerifier.java

示例4: runJobIfFailing

import com.offbytwo.jenkins.model.JobWithDetails; //导入依赖的package包/类
public void runJobIfFailing(String test, JSONObject repository) throws Exception {
    String jobName = ConfigParser.parseConfigString(repository.getString("jobName"), test);

    JobWithDetails job = jenkins.getJob(jobName);
    if (job == null) {
        System.out.println("Job not yet created, skipping: [" + jobName + "]");
        return;
    }
    Build lastBuild = job.getLastBuild();
    if (lastBuild == null) {
        runJob(test, repository);
        return;
    }
    BuildResult lastResult = lastBuild.details().getResult();
    if (lastResult != null && lastResult.equals(BuildResult.FAILURE)) {
        runJob(test, repository);
    }
}
 
开发者ID:alianza-dev,项目名称:jenkins-test-job-generator,代码行数:19,代码来源:JenkinsHelper.java

示例5: assertJobExists

import com.offbytwo.jenkins.model.JobWithDetails; //导入依赖的package包/类
public static JobWithDetails assertJobExists(JenkinsServer jenkins, String jobName) {
    JobWithDetails job = tryFindJob(jenkins, jobName);
    if (job != null) {
        return job;
    }
    fail("No job found called `" + jobName + "` for jenkins at " + jenkins);
    return job;
}
 
开发者ID:fabric8io,项目名称:fabric8-devops,代码行数:9,代码来源:JenkinsAsserts.java

示例6: assertJobLastBuildIsSuccessful

import com.offbytwo.jenkins.model.JobWithDetails; //导入依赖的package包/类
public static void assertJobLastBuildIsSuccessful(long timeMillis, final JenkinsServer jenkins, final String jobName) throws Exception {
    Asserts.assertWaitFor(timeMillis, new Block() {
        @Override
        public void invoke() throws Exception {
            JobWithDetails job = assertJobExists(jenkins, jobName);
            Build lastBuild = job.getLastBuild();
            assertNotNull("No lastBuild for job `" + jobName + "`", lastBuild);
            System.out.println("Last build of `" + jobName + "` at " + lastBuild.getUrl());
            Build lastSuccessfulBuild = job.getLastSuccessfulBuild();
            assertNotNull("No lastSuccessfulBuild for job `" + jobName + "` at: " + lastBuild.getUrl(), lastSuccessfulBuild);
            assertEquals("Last successful build number was not the last build number: " + lastBuild.getUrl(), lastBuild.getNumber(), lastSuccessfulBuild.getNumber());
            System.out.println("Successful build of `" + jobName + "` at " + lastSuccessfulBuild.getUrl());
        }
    });
}
 
开发者ID:fabric8io,项目名称:fabric8-devops,代码行数:16,代码来源:JenkinsAsserts.java

示例7: tryFindJob

import com.offbytwo.jenkins.model.JobWithDetails; //导入依赖的package包/类
protected static JobWithDetails tryFindJob(JenkinsServer jenkins, String jobName) {
    for (int i = 0; i < 15; i++) {
        try {
            return jenkins.getJob(jobName);
        } catch (IOException e) {
            LOG.info("Caught: " + e, e);
            try {
                Thread.sleep(2000);
            } catch (InterruptedException e1) {
                // ignore
            }
        }
    }
    return null;
}
 
开发者ID:fabric8io,项目名称:fabric8-devops,代码行数:16,代码来源:JenkinsAsserts.java

示例8: testBuild

import com.offbytwo.jenkins.model.JobWithDetails; //导入依赖的package包/类
@Test
public void testBuild() throws IOException {
    
	String jobName = "testing-jenkins-api";
    String parameterNameForJob = "ParamForTesting";
    final ImmutableMap<String, String> params = ImmutableMap.of(parameterNameForJob, "master");
    JenkinsServer jenkninsServer = CollectorApi.getJenkinsServer();
    JobWithDetails job = jenkninsServer.getJob(jobName);
    job.build(params);
}
 
开发者ID:Verigreen,项目名称:verigreen,代码行数:11,代码来源:TestJenkinsVerifier.java

示例9: getJob

import com.offbytwo.jenkins.model.JobWithDetails; //导入依赖的package包/类
/**
 * Get a single Job from the server.
 * 
 * @return A single Job, null if not present
 * @throws IOException
 */
public JobWithDetails getJob(String jobName) throws IOException {
	try {
		JobWithDetails job = client.get("/job/" + encode(jobName),
				JobWithDetails.class);
		// JobWithDetails job = client.get("/job/" + jobName, JobWithDetails.class);
		job.setClient(client);

		return job;
	} catch (HttpResponseException e) {
		if (e.getStatusCode() == 404) {
			return null;
		}
		throw e;
	}

}
 
开发者ID:baloise,项目名称:dashboard-plus,代码行数:23,代码来源:JenkinsServer.java

示例10: assertJob

import com.offbytwo.jenkins.model.JobWithDetails; //导入依赖的package包/类
public static JobWithDetails assertJob(String projectName) throws URISyntaxException, IOException {
    JenkinsServer jenkins = createJenkinsServer();
    JobWithDetails job = jenkins.getJob(projectName);
    assertThat(job).describedAs("No Jenkins Job found for name: " + projectName).isNotNull();
    return job;
}
 
开发者ID:fabric8io,项目名称:fabric8-forge,代码行数:7,代码来源:ForgeClientAsserts.java

示例11: loadMarkerArtifactAsProperty

import com.offbytwo.jenkins.model.JobWithDetails; //导入依赖的package包/类
/**
 * Loads the marker file of the last build (archived during the build)
 *
 * @param jenkins the jenkins instance we want to load from
 * @return the marker file loaded as a property file (so that it can be easily queried)
 * @throws IOException        Something unexpected went wrong when querying the Jenkins server
 * @throws URISyntaxException Something uunexpected went wrong loading the marker as a property
 */
private Properties loadMarkerArtifactAsProperty(JenkinsServer jenkins) throws IOException, URISyntaxException {
    JobWithDetails detailedJob = jenkins.getJob(JENKINS_JOB_NAME);
    BuildWithDetails lastBuild = detailedJob.getLastBuild().details();
    int buildNbr = lastBuild.getNumber();
    boolean isBuilding = lastBuild.isBuilding();
    log.info("BuildNbr we are examining: " + buildNbr);

    List<Artifact> artifactList = lastBuild.getArtifacts();
    assertEquals("Not the expected number of artifacts", 1, artifactList.size());

    Artifact markerArtifact = artifactList.get(0);
    String markerArtifactFileName = markerArtifact.getFileName();
    assertEquals("The artifact is not the expected one", "marker.txt", markerArtifactFileName);
    InputStream markerArtifactInputStream = lastBuild.details().downloadArtifact(markerArtifact);
    String markerAsText = IOUtils.toString(markerArtifactInputStream, Charset.defaultCharset());
    log.info("\n" + markerAsText);
    StringReader reader = new StringReader(markerAsText);
    Properties markerAsProperty = new Properties();
    markerAsProperty.load(reader);

    //check if the marker matches the build number we expect.
    String buildNbrFromMarker = markerAsProperty.getProperty("BUILD_NUMBER");
    String buildNbrFromQery = String.valueOf(buildNbr);
    assertEquals("The build number from the marker does not match the last build number", buildNbrFromMarker, buildNbrFromQery);
    return markerAsProperty;
}
 
开发者ID:jenkinsci,项目名称:gogs-webhook-plugin,代码行数:35,代码来源:GogsWebHook_IT.java

示例12: assertJobHasBuild

import com.offbytwo.jenkins.model.JobWithDetails; //导入依赖的package包/类
public static Build assertJobHasBuild(JenkinsServer jenkins, String jobName) {
    JobWithDetails job = assertJobExists(jenkins, jobName);
    Build lastBuild = job.getLastBuild();
    assertNotNull("No lastBuild for job `" + jobName + "`", lastBuild);
    return lastBuild;
}
 
开发者ID:fabric8io,项目名称:fabric8-devops,代码行数:7,代码来源:JenkinsAsserts.java

示例13: shouldReturnBuildStatusForBuild

import com.offbytwo.jenkins.model.JobWithDetails; //导入依赖的package包/类
@Test
public void shouldReturnBuildStatusForBuild() throws Exception {
    JobWithDetails job = server.getJobs().get("pr").details();
    BuildWithDetails build = job.getBuilds().get(0).details();
    assertEquals(BuildResult.SUCCESS, build.getResult());
    assertEquals("foobar", build.getParameters().get("REVISION"));
}
 
开发者ID:Verigreen,项目名称:verigreen,代码行数:8,代码来源:JenkinsServerIntegration.java

示例14: testGetJobByName

import com.offbytwo.jenkins.model.JobWithDetails; //导入依赖的package包/类
@Test
public void testGetJobByName() throws Exception {
    final String jobName = "trunk";

    JobWithDetails job = server.getJob(jobName);

    assertEquals("trunk",job.getName());
    assertEquals("trunk",job.getDisplayName());
}
 
开发者ID:Verigreen,项目名称:verigreen,代码行数:10,代码来源:JenkinsServerIntegration.java

示例15: testGetJobByNameDoesntExist

import com.offbytwo.jenkins.model.JobWithDetails; //导入依赖的package包/类
@Test
public void testGetJobByNameDoesntExist() throws Exception {
    final String jobName = "imprettysurethereisnojobwiththisname";

    JobWithDetails job = server.getJob(jobName);

    assertEquals(null, job);
}
 
开发者ID:Verigreen,项目名称:verigreen,代码行数:9,代码来源:JenkinsServerIntegration.java


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