aboutsummaryrefslogtreecommitdiffstats
path: root/api
diff options
context:
space:
mode:
authorchenjiankun <chenjiankun1@huawei.com>2017-07-13 07:24:35 +0000
committerchenjiankun <chenjiankun1@huawei.com>2017-07-13 07:24:35 +0000
commit2b2cfebd2383e38fc375eb308c3f96ef20d75881 (patch)
treec3d8df475621a69dde903af036560147e89f3415 /api
parentcc3c7796ccb30b021c219cabdbe73bfc14fb38cc (diff)
Add API to get single environment info
JIRA: YARDSTICK-717 API: /api/v2/yardstick/environments/<environment_id> METHOD: GET Change-Id: I9fe42a48520cc17d0f5416080b3595bd6c269761 Signed-off-by: chenjiankun <chenjiankun1@huawei.com>
Diffstat (limited to 'api')
-rw-r--r--api/resources/v2/environments.py20
-rw-r--r--api/urls.py1
2 files changed, 21 insertions, 0 deletions
diff --git a/api/resources/v2/environments.py b/api/resources/v2/environments.py
index 4b27c45b8..f83c0a941 100644
--- a/api/resources/v2/environments.py
+++ b/api/resources/v2/environments.py
@@ -49,3 +49,23 @@ class V2Environments(ApiResource):
environment_handler.insert(env_init_data)
return result_handler(consts.API_SUCCESS, {'uuid': env_id})
+
+
+class V2Environment(ApiResource):
+
+ def get(self, environment_id):
+ try:
+ uuid.UUID(environment_id)
+ except ValueError:
+ return result_handler(consts.API_ERROR, 'invalid environment id')
+
+ environment_handler = V2EnvironmentHandler()
+ try:
+ environment = environment_handler.get_by_uuid(environment_id)
+ except ValueError:
+ return result_handler(consts.API_ERROR, 'no such environment id')
+
+ environment = change_obj_to_dict(environment)
+ container_id = environment['container_id']
+ environment['container_id'] = jsonutils.loads(container_id) if container_id else {}
+ return result_handler(consts.API_SUCCESS, {'environment': environment})
diff --git a/api/urls.py b/api/urls.py
index 0c63fb040..70d69f881 100644
--- a/api/urls.py
+++ b/api/urls.py
@@ -24,4 +24,5 @@ urlpatterns = [
# api v2
Url('/api/v2/yardstick/environments', 'v2_environments'),
Url('/api/v2/yardstick/environments/action', 'v2_environments'),
+ Url('/api/v2/yardstick/environments/<environment_id>', 'v2_environment'),
]