func()

in pkg/apis/frameworkcontroller/v1/funcs.go [667:716]


func (f *Framework) MockTask(taskRoleName string, taskIndex int32, taskDeleting bool) *Task {
	taskSpec := f.GetTaskSpec(taskRoleName)
	taskRoleStatus := f.TaskRoleStatus(taskRoleName)
	taskStatus := f.TaskStatus(taskRoleName, taskIndex)
	taskIndexStr := fmt.Sprint(taskIndex)
	frameworkUIDStr := string(f.UID)
	frameworkAttemptIDStr := fmt.Sprint(f.FrameworkAttemptID())
	frameworkAttemptInstanceUIDStr := string(*f.FrameworkAttemptInstanceUID())
	configMapUIDStr := string(*f.ConfigMapUID())
	taskRoleUIDStr := string(taskRoleStatus.InstanceUID)

	task := &Task{
		TypeMeta:   meta.TypeMeta{},
		ObjectMeta: meta.ObjectMeta{},
		Spec:       taskSpec,
		Status:     taskStatus,
	}

	// Mock Task
	task.SetGroupVersionKind(TaskGroupVersionKind)
	task.Name = GetTaskName(f.Name, taskRoleName, taskIndex)
	task.Namespace = f.Namespace
	task.UID = taskStatus.InstanceUID
	task.ResourceVersion = f.ResourceVersion
	task.Generation = f.Generation
	task.CreationTimestamp = taskStatus.StartTime
	if taskDeleting {
		task.DeletionTimestamp = common.PtrNow()
		task.DeletionGracePeriodSeconds = common.PtrInt64(0)
	}

	task.Annotations = map[string]string{}
	task.Annotations[AnnotationKeyFrameworkNamespace] = f.Namespace
	task.Annotations[AnnotationKeyFrameworkName] = f.Name
	task.Annotations[AnnotationKeyTaskRoleName] = taskRoleName
	task.Annotations[AnnotationKeyTaskIndex] = taskIndexStr
	task.Annotations[AnnotationKeyConfigMapName] = f.ConfigMapName()
	task.Annotations[AnnotationKeyFrameworkUID] = frameworkUIDStr
	task.Annotations[AnnotationKeyFrameworkAttemptID] = frameworkAttemptIDStr
	task.Annotations[AnnotationKeyFrameworkAttemptInstanceUID] = frameworkAttemptInstanceUIDStr
	task.Annotations[AnnotationKeyConfigMapUID] = configMapUIDStr
	task.Annotations[AnnotationKeyTaskRoleUID] = taskRoleUIDStr

	task.Labels = map[string]string{}
	task.Labels[LabelKeyFrameworkName] = f.Name
	task.Labels[LabelKeyTaskRoleName] = taskRoleName
	task.Labels[LabelKeyTaskIndex] = taskIndexStr

	return task
}