Check to see if a build is running or not

rajeshkumar created the topic: Check to see if a build is running or not
All I need to do is check to see if a build is running or not. To do that I used curl and grep, like this:

curl http://myjenkins/job/myjob/lastBuild/api/json | grep –color result\”:null

If a build is in progress, a grep for result\”:null will return 0.
If a build is finished, a grep for result\”:null will return 1.
Not especially elegant, but it works well enough for my needs.

For example, I have a Bash script that starts a build, then waits for it to finish:

JOB_URL=http://jenkins.local/job/stevehhhbuild
JOB_STATUS_URL=${JOB_URL}/lastBuild/api/json

GREP_RETURN_CODE=0

# Start the build
curl $JOB_URL/build?delay=0sec

# Poll every thirty seconds until the build is finished
while [ $GREP_RETURN_CODE -eq 0 ]
do
sleep 30
# Grep will return 0 while the build is running:
curl –silent $JOB_STATUS_URL | grep result\”:null > /dev/null
GREP_RETURN_CODE=$?
done

echo Build finished

Reference – serverfault.com/questions/309848/how-can…49988bb53ee820fe202a
Regards,
Rajesh Kumar
Twitt me @ twitter.com/RajeshKumarIn