Story #1206
Updated by dkliban@redhat.com about 9 years ago
- Documentation on using the Group Task Status - Add pulp/api/v2/task_groups/<group_id>/state_summary /pulp/api/v2/group-tasks/<group_id> in urls.py - Add a view to handle the new endpoint - The view should check the database for the status of all tasks that have the specific group_id and return a status based on that information. - The view should return JSON structure that looks like: <pre> { "_href": "/pulp/api/v2/task_groups/0fe4fcab-a040-11e1-a71c-00508d977dff/state_summary", "/pulp/api/v2/group-tasks/0fe4fcab-a040-11e1-a71c-00508d977dff/", "finished": 4, "state": "running", # depends on whether or not all tasks finished running "canceled": 0, "group_id": "0fe4fcab-a040-11e1-a71c-00508d977dff", "error": 1, "task_type": "pulp.server.tasks.repository.applicability", "running": 3, "progress_report": {}, # contents depend on the operation "waiting": 0, "result": null, "group_id": "0fe4fcab-a040-11e1-a71c-00508d977dff", "start_time": "2012-05-17T16:48:00Z", "finish_time": null, "exception": null, "traceback": null, "tags": [ "pulp:repository:f16", "pulp:action:repo_applicability" ], "child_tasks": [{"href": "/pulp/api/v2/tasks/7744e2df-39b9-46f0-bb10-feffa2f7014b/", "task_id": "7744e2df-39b9-46f0-bb10-feffa2f7014b" }], "error": null } </pre> Note that the list of tasks are called child_tasks, unlike spawned_tasks. This is to distinguish between tasks that should be monitored by katello (spawned) versus tasks that are not to be monitored by katello (child).