Hi Jenkins team,

I'm one of the developers on the Python Jenkins API 
(https://pypi.python.org/pypi/jenkinsapi)

This project wraps up the Jenkins REST API and is designed to make 
interacting with Jenkins from Python very easy. Mostly it works well, 
however there's one feature that our users complain about often: Getting 
the status of recently started jobs.

It's easy to start a job in Jenkins, you just hit the /build URL. A status 
code of 200 or 201 indicates whether the request was accepted. So far so 
good - the problem we have is reporting back to the user in a *timely* and 
*reliable* manner what just happened (or what may be about to happen) as a 
consequence of starting a new build. You just cannot tell from an HTTP 
status code.

We've tried to solve this problem in a goofy way:

* We poll Jenkins to get the status of the builds & queue
* We tell Jenkins to start the build
* We wait a while
* We poll Jenkins again to see what changed.

The assumption is that any difference between the two polls can be 
accounted for by the job you just started. Quite a lot of the time that's 
an incorrect. Also, the waiting makes our API wrapper sluggish and less 
useful.

What'd really want is a change to the /build and /buildWithParmeters so 
that instead of just returning an HTTP status code, I'd like to see some 
more detailed status. It ought to be able to identify the queue item or 
ongoing build that was generated as a result of attempting to start the job.

Does this sound plausible?

Sal


-- 
You received this message because you are subscribed to the Google Groups 
"Jenkins Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to