Repository :
http://git.fedorahosted.org/cgit/copr.git
On branch : master
---------------------------------------------------------------
commit 683b37b7e1875bd21332f4a6d685cfa0936dde51
Author: Richard Marko <rmarko(a)fedoraproject.org>
Date: Mon Dec 2 16:32:31 2013 +0100
[frontend] add build status to API
Signed-off-by: Richard Marko <rmarko(a)fedoraproject.org>
---------------------------------------------------------------
coprs_frontend/coprs/views/api_ns/api_general.py | 23 ++++++++++++++++++++-
1 files changed, 21 insertions(+), 2 deletions(-)
diff --git a/coprs_frontend/coprs/views/api_ns/api_general.py
b/coprs_frontend/coprs/views/api_ns/api_general.py
index 97e4c03..be66204 100644
--- a/coprs_frontend/coprs/views/api_ns/api_general.py
+++ b/coprs_frontend/coprs/views/api_ns/api_general.py
@@ -166,8 +166,9 @@ def copr_new_build(username, coprname):
db.session.commit()
- output = {'output': 'ok', 'message':
- 'Build was added to {0}.'.format(coprname)}
+ output = {'output': 'ok',
+ 'id': build.id,
+ 'message': 'Build was added to
{0}.'.format(coprname)}
else:
output = {'output': 'notok', 'error': 'Invalid
request'}
httpcode = 500
@@ -175,3 +176,21 @@ def copr_new_build(username, coprname):
jsonout = flask.jsonify(output)
jsonout.status_code = httpcode
return jsonout
+
+
+(a)api_ns.route('/coprs/build_status/<build_id>/',
methods=["GET"])
+@api_login_required
+def build_status(build_id):
+ build = builds_logic.BuildsLogic.get(build_id).first()
+
+ if build:
+ httpcode = 200
+ output = {'output': 'ok',
+ 'status': build.state}
+ else:
+ output = {'output': 'notok', 'error': 'Invalid
build'}
+ httpcode = 404
+
+ jsonout = flask.jsonify(output)
+ jsonout.status_code = httpcode
+ return jsonout