From 61fdf21ee5640890bae6ac28070e8858cc02a866 Mon Sep 17 00:00:00 2001 From: Patrick Uiterwijk Date: May 22 2017 20:36:59 +0000 Subject: Add task status API Signed-off-by: Patrick Uiterwijk --- diff --git a/pagure/api/__init__.py b/pagure/api/__init__.py index f600bc5..def1205 100644 --- a/pagure/api/__init__.py +++ b/pagure/api/__init__.py @@ -28,6 +28,7 @@ API = flask.Blueprint('api_ns', __name__, url_prefix='/api/0') import pagure # noqa: E402 import pagure.lib # noqa: E402 +import pagure.lib.tasks from pagure import __api_version__, APP, SESSION, authenticated # noqa: E402 from pagure.doc_utils import load_doc, modify_rst, modify_html # noqa: E402 from pagure.exceptions import APIError # noqa: E402 @@ -312,6 +313,24 @@ def api_users(): ) +@API.route('/task//status') +@API.route('/task//status/') +def api_task_status(taskid): + ''' + Return the status of a async task + ''' + result = pagure.lib.tasks.get_result(taskid) + if not result.ready: + output = {'ready': False, + 'status': result.status} + else: + output = {'ready': True, + 'succesful': result.succesful(), + 'status': result.status} + + return flask.jsonify(output) + + @API.route('//tags') @API.route('//tags/') @API.route('/fork///tags') diff --git a/pagure/api/project.py b/pagure/api/project.py index 5dcb7f9..b2aaf2d 100644 --- a/pagure/api/project.py +++ b/pagure/api/project.py @@ -513,7 +513,6 @@ def api_new_project(): user_ns=APP.config.get('USER_NAMESPACE', False), ) SESSION.commit() - pagure.lib.git.generate_gitolite_acls() output = {'message': 'Project creation queued', 'taskid': taskid} except pagure.exceptions.PagureException as err: