2017-04-05 33 views
1

我知道,有一种方法来启用或通过使用命令获取詹金斯作业状态通过使用curl

curl -u user:password -X POST http://server/job/jobname/enable 
curl -u user:password -X POST http://server/job/jobname/disable 

禁用詹金斯的工作,但我需要的 - 是让启用作业的状态” /禁用“并将其写入bash $ status变量。

有没有办法做到这一点?

回答

1

您可以检查作业启用或禁用使用API​​

http://server:port/job/jobname/api/xml?xpath=*/buildable 

所以,用面包屑,就可以使用这样的事情:

CRUMB=$(curl -s 'http://USER:[email protected]:PORT/crumbIssuer/api/xml?xpath=concat(//crumbRequestField,":",//crumb)') 

myStatus=$(curl -X POST -H "$CRUMB" "http://USER:[email protected]:PORT/job/jobname/api/xml?xpath=*/buildable") 

而且在可变myStatus

<buildable>true</buildable> 

<buildable>false</buildable>