Add API(v2) to create project
[yardstick.git] / api / resources / v2 / projects.py
1 import uuid
2
3 from datetime import datetime
4
5 from api import ApiResource
6 from api.database.v2.handlers import V2ProjectHandler
7 from yardstick.common.utils import result_handler
8 from yardstick.common import constants as consts
9
10
11 class V2Projects(ApiResource):
12
13     def post(self):
14         return self._dispatch_post()
15
16     def create_project(self, args):
17         try:
18             name = args['name']
19         except KeyError:
20             return result_handler(consts.API_ERROR, 'name must be provided')
21
22         project_id = str(uuid.uuid4())
23         create_time = datetime.now()
24         project_handler = V2ProjectHandler()
25
26         project_init_data = {
27             'uuid': project_id,
28             'name': name,
29             'time': create_time
30         }
31         project_handler.insert(project_init_data)
32
33         return result_handler(consts.API_SUCCESS, {'uuid': project_id})