type MySubTask struct {
	Sensor string
	Value  float64
}

type Task struct{}

func (t *Task) Execute(ctx context.Context) error {
	err := workflows.SubmitSubtask(ctx, 
		&MySubTask{
			Sensor: "A",
			Value:  42,
		},
	)
	if err != nil {
		return fmt.Errorf("failed to submit subtasks: %w", err)
	}

	return nil
}
workflows.SubmitSubtask(
	ctx context.Context,
	task workflows.Task,
	options ...subtask.SubmitOption,
) (subtask.FutureTask, error)
Submit a subtask to the task runner. This function is intended to be used in tasks.

Parameters

task
Task
A subtask to submit
options
[]subtask.SubmitOption
Options for the subtask

Options

WithDependencies(dependencies ...FutureTask)
Set dependencies for the task
WithClusterSlug(clusterSlug string)
default:"cluster of the task runner"
Set the cluster slug of the cluster where the task will be executed.
WithMaxRetries(maxRetries int64)
default:"0"
Set the maximum number of retries for the subtask in case it fails

Returns

A future task that can be used to set dependencies between tasks.

type MySubTask struct {
	Sensor string
	Value  float64
}

type Task struct{}

func (t *Task) Execute(ctx context.Context) error {
	err := workflows.SubmitSubtask(ctx, 
		&MySubTask{
			Sensor: "A",
			Value:  42,
		},
	)
	if err != nil {
		return fmt.Errorf("failed to submit subtasks: %w", err)
	}

	return nil
}