diff options
author | chenjiankun <chenjiankun1@huawei.com> | 2017-07-19 08:02:40 +0000 |
---|---|---|
committer | chenjiankun <chenjiankun1@huawei.com> | 2017-07-19 08:02:40 +0000 |
commit | 6bc4d2c813460cba201c390cc2380fb99bdc2c9d (patch) | |
tree | f156cd8e7931d073e966538a012c88186d2ded91 /api | |
parent | 7d67a9a3bb7eddf9505d7a232e121c6c59bde287 (diff) |
Add API(V2) to get certain project info
JIRA: YARDSTICK-733
API: /api/v2/yardstick/projects/<project_id>
METHOD: GET
Change-Id: I20a615af96229aefac6ef86566a7b9c5d42f9633
Signed-off-by: chenjiankun <chenjiankun1@huawei.com>
Diffstat (limited to 'api')
-rw-r--r-- | api/resources/v2/projects.py | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/api/resources/v2/projects.py b/api/resources/v2/projects.py index 1c3c76ba2..7d51cf040 100644 --- a/api/resources/v2/projects.py +++ b/api/resources/v2/projects.py @@ -42,3 +42,24 @@ class V2Projects(ApiResource): project_handler.insert(project_init_data) return result_handler(consts.API_SUCCESS, {'uuid': project_id}) + + +class V2Project(ApiResource): + + def get(self, project_id): + try: + uuid.UUID(project_id) + except ValueError: + return result_handler(consts.API_ERROR, 'invalid project id') + + project_handler = V2ProjectHandler() + try: + project = project_handler.get_by_uuid(project_id) + except ValueError: + return result_handler(consts.API_ERROR, 'no such project id') + + project_info = change_obj_to_dict(project) + tasks = project_info['tasks'] + project_info['tasks'] = tasks.split(',') if tasks else [] + + return result_handler(consts.API_SUCCESS, {'project': project_info}) |