3 from datetime import datetime
5 from api import ApiResource
6 from api.database.v2.handlers import V2TaskHandler
7 from api.database.v2.handlers import V2ProjectHandler
8 from yardstick.common.utils import result_handler
9 from yardstick.common import constants as consts
11 LOG = logging.getLogger(__name__)
12 LOG.setLevel(logging.DEBUG)
15 class V2Tasks(ApiResource):
18 return self._dispatch_post()
20 def create_task(self, args):
24 return result_handler(consts.API_ERROR, 'name must be provided')
27 project_id = args['project_id']
29 return result_handler(consts.API_ERROR, 'project_id must be provided')
31 task_id = str(uuid.uuid4())
32 create_time = datetime.now()
33 task_handler = V2TaskHandler()
35 LOG.info('create task in database')
38 'project_id': project_id,
43 task_handler.insert(task_init_data)
45 LOG.info('create task in project')
46 project_handler = V2ProjectHandler()
47 project_handler.append_attr(project_id, {'tasks': task_id})
49 return result_handler(consts.API_SUCCESS, {'uuid': task_id})