Пример #1
0
 def post(self, request, *args, **kwargs):
     task_id = int(self.kwargs['task_id'])
     config_stages = request.data.get('config_stages', None)
     if config_stages is not None:
         for stage in config_stages:
             temp_serializer = self.get_serializer(data=stage)
             temp_serializer.is_valid()
             temp_serializer._saving_instances = False
             instance = CITaskConfigService.task_stage(stage.get('id'))
             instance = temp_serializer.recursive_save(
                 temp_serializer.validated_data, instance)
             instance.save()
             for step in stage.get('steps', []):
                 temp_serializer = ci_step_serializer.CITaskStepSerializer(
                     data=step)
                 temp_serializer.is_valid()
                 temp_serializer._saving_instances = False
                 instance = CITaskConfigService.task_step(step.get('id'))
                 instance = temp_serializer.recursive_save(
                     temp_serializer.validated_data, instance)
                 instance.save()
         parameter_groups = CITaskParameterService.task_parameter_list(
             task_id)
         for group in parameter_groups:
             CITaskParameterService.save_step_settings(str(group.id))
     return Response(config_stages, status=status.HTTP_201_CREATED)
Пример #2
0
 def delete(self, request, *args, **kwargs):
     stage_id = self.kwargs['stage_id']
     CITaskConfigService.delete_steps(stage_id)
     stage = CITaskConfigService.task_stage(stage_id)
     parameter_groups = CITaskParameterService.task_parameter_list(
         stage.task_id)
     for group in parameter_groups:
         CITaskParameterService.save_step_settings(str(group.id))
     return self.destroy(request, *args, **kwargs)
Пример #3
0
 def get_ParameterGroups(self, obj):
     parameter_groups = CITaskParameterService.task_parameter_list(obj.id)
     result = list()
     for item in parameter_groups:
         temp = dict()
         temp['id'] = str(item.id)
         temp['title'] = item.group_name
         temp['default'] = item.is_default
         result.append(temp)
     return result
Пример #4
0
 def get_ci_task_parameter_list(self, task_id):
     ci_task = CITask.objects.get(int(task_id))
     task_parameter_groups = CITaskParameterService.task_parameter_list(
         int(task_id))
     vm_groups = list()
     for group in task_parameter_groups:
         temp = VM_TaskParameterGroup(group)
         vm_groups.append(temp)
     pagefileds = {"ci_task_parameter_groups": vm_groups, "task": ci_task}
     return self.get_webpart(pagefileds, CITaskPath.task_parameter_list)
Пример #5
0
 def post(self, request, *args, **kwargs):
     stage_id = self.kwargs.get('stage_id', None)
     stage = CITaskConfigService.task_stage(stage_id)
     serializer = self.get_serializer(data=request.data)
     serializer.is_valid(raise_exception=True)
     self.perform_create(serializer)
     headers = self.get_success_headers(serializer.data)
     parameter_groups = CITaskParameterService.task_parameter_list(
         stage.task_id)
     for group in parameter_groups:
         CITaskParameterService.save_step_settings(str(group.id))
     return Response(serializer.data,
                     status=status.HTTP_201_CREATED,
                     headers=headers)
Пример #6
0
 def get_ParameterGroups(self, obj):
     parameter_groups = CITaskParameterService.task_parameter_list(obj.id)
     result = list()
     for item in parameter_groups:
         temp = dict()
         temp['id'] = str(item.id)
         temp['title'] = item.group_name
         temp['default'] = item.is_default
         temp['parameters'] = list()
         i = 1
         if item.parameters is not None:
             for parameter in item.parameters:
                 temp_dict = dict()
                 temp_dict['id'] = i
                 temp_dict['key'] = parameter.key
                 temp_dict['value'] = parameter.value
                 temp_dict['description'] = parameter.description
                 temp['parameters'].append(temp_dict)
                 i = i + 1
         result.append(temp)
     return result
Пример #7
0
 def task_parameter_dropdown_list(self, task_id):
     task_parameter_groups = CITaskParameterService.task_parameter_list(
         int(task_id))
     pagefileds = {"ci_task_parameter_groups": task_parameter_groups}
     return self.get_webpart(
         pagefileds, CICommonControllPath.task_parameter_dropdownlist)
Пример #8
0
 def get_task_parameter_menu(self, task_id):
     task_parameter_group = CITaskParameterService.task_parameter_list(
         int(task_id))
     pagefileds = {"parameter_groups": task_parameter_group}
     return self.get_webpart(pagefileds, CITaskPath.task_parameter_menu)
Пример #9
0
 def get_queryset(self):
     task_id = self.kwargs['task_id']
     return CITaskParameterService.task_parameter_list(task_id)