如何在Java中获取Jenkins作业的状态?

时间:2015-03-23 20:40:39

标签: java java-ee jenkins

我想通过java获取jenkins中的工作状态。

我可以参考哪些API?

2 个答案:

答案 0 :(得分:2)

答案 1 :(得分:1)

使用以下REST api链接可以获得构建成功或失败:

http://myJenkinsMachine/job/someJob/api/xml 您将获得以下xml的构建颜色(蓝色或任何其他颜色):

<freeStyleProject>

<description/>

<displayName>someJob</displayName>

<name>someJob</name>

<url>http://myJenkins/job/someJob/</url>

**<buildable>true</buildable>**

<build>

<number>4</number>

<url>http://myJenkins/job/someJob/4/</url>

</build>

<build>

<number>3</number>

<url>http://myJenkins/job/someJob/3/</url>

</build>

<build>

<number>2</number>

<url>http://myJenkins/job/someJob/2/</url>

</build>

<build>

<number>1</number>

<url>http://myJenkins/job/someJob/1/</url>

</build>

<color>blue</color>

<firstBuild>

<number>1</number>

<url>http://myJenkins/job/someJob/1/</url>

</firstBuild>

<healthReport>

<description>Build stability: No recent builds failed.</description>

<iconUrl>health-80plus.png</iconUrl>

<score>100</score>

</healthReport>

<inQueue>false</inQueue>

<keepDependencies>false</keepDependencies>

<lastBuild>

<number>4</number>

<url>http://myJenkins/job/someJob/4/</url>

</lastBuild>

<lastCompletedBuild>

<number>4</number>

<url>http://myJenkins/job/someJob/4/</url>

</lastCompletedBuild>

<lastStableBuild>

<number>4</number>

<url>http://myJenkins/job/someJob/4/</url>

</lastStableBuild>

<lastSuccessfulBuild>

<number>4</number>

<url>http://myJenkins/job/someJob/4/</url>

</lastSuccessfulBuild>

<lastUnsuccessfulBuild>

<number>3</number>

<url>http://myJenkins/job/someJob/3/</url>

</lastUnsuccessfulBuild>

<nextBuildNumber>5</nextBuildNumber>

<concurrentBuild>false</concurrentBuild>

<scm/>

</freeStyleProject>

OR

http://myJenkinsMachine/job/someJob/api/xml?depth=4 - 获取更多细节到4级 - 无论是否建造

<freeStyleProject>
<description/>
<displayName>somejob</displayName>
<name>somejob</name>
<url>http://myJenkins/job/somejob/</url>
<allBuild>
<action>
<cause>
<shortDescription>Started by user ancd</shortDescription><userId>ancd</userId><userName>ancd</userName></cause></action><action/>
**<building>false</building>**
<duration>236018</duration>