diff options
author | chenjiankun <chenjiankun1@huawei.com> | 2017-07-13 02:26:19 +0000 |
---|---|---|
committer | chenjiankun <chenjiankun1@huawei.com> | 2017-07-13 03:46:40 +0000 |
commit | 49be6a8c0f42c9a12af305721beac95285f74b2b (patch) | |
tree | 7b4fad48def68cccc2a910040a4ca8f7de199dde | |
parent | f83729d38eb396fe5a94be13a86865f9cd26d0f4 (diff) |
Add API to create environment
JIRA: YARDSTICK-715
API: /api/v2/yardstick/environments/action
METHOD: POST
PARAM:
{
'action': 'create_environment'
}
Change-Id: I58086be3c70cdc3c4c93516bcfd53ba725486600
Signed-off-by: chenjiankun <chenjiankun1@huawei.com>
-rw-r--r-- | api/resources/v2/__init__.py | 0 | ||||
-rw-r--r-- | api/resources/v2/environments.py | 33 | ||||
-rw-r--r-- | api/urls.py | 5 |
3 files changed, 37 insertions, 1 deletions
diff --git a/api/resources/v2/__init__.py b/api/resources/v2/__init__.py new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/api/resources/v2/__init__.py diff --git a/api/resources/v2/environments.py b/api/resources/v2/environments.py new file mode 100644 index 000000000..dc6eac725 --- /dev/null +++ b/api/resources/v2/environments.py @@ -0,0 +1,33 @@ +import uuid +import logging + +from api import ApiResource +from api.database.v2.handlers import V2EnvironmentHandler +from yardstick.common.utils import result_handler +from yardstick.common import constants as consts + +LOG = logging.getLogger(__name__) +LOG.setLevel(logging.DEBUG) + + +class V2Environments(ApiResource): + + def post(self): + return self._dispatch_post() + + def create_environment(self, args): + try: + name = args['name'] + except KeyError: + return result_handler(consts.API_ERROR, 'name must be provided') + + env_id = str(uuid.uuid4()) + + environment_handler = V2EnvironmentHandler() + env_init_data = { + 'name': name, + 'uuid': env_id + } + environment_handler.insert(env_init_data) + + return result_handler(consts.API_SUCCESS, {'uuid': env_id}) diff --git a/api/urls.py b/api/urls.py index 4b9d4d191..0ffba89c9 100644 --- a/api/urls.py +++ b/api/urls.py @@ -19,5 +19,8 @@ urlpatterns = [ Url('/yardstick/testcases/<case_name>/docs', 'v1_case_docs'), Url('/yardstick/testsuites/action', 'v1_test_suite'), Url('/yardstick/results', 'v1_result'), - Url('/yardstick/env/action', 'v1_env') + Url('/yardstick/env/action', 'v1_env'), + + # api v2 + Url('/api/v2/yardstick/environments/action', 'v2_environments'), ] |