interfaces

package
v0.0.0-...-267b159 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 17, 2023 License: Apache-2.0 Imports: 3 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type DescriptionEntityInterface

type DescriptionEntityInterface interface {
	GetDescriptionEntity(ctx context.Context, request admin.ObjectGetRequest) (*admin.DescriptionEntity, error)
	ListDescriptionEntity(ctx context.Context, request admin.DescriptionEntityListRequest) (*admin.DescriptionEntityList, error)
}

DescriptionEntityInterface for managing DescriptionEntity

type ExecutionInterface

type ExecutionInterface interface {
	CreateExecution(ctx context.Context, request admin.ExecutionCreateRequest, requestedAt time.Time) (
		*admin.ExecutionCreateResponse, error)
	RelaunchExecution(ctx context.Context, request admin.ExecutionRelaunchRequest, requestedAt time.Time) (
		*admin.ExecutionCreateResponse, error)
	// Recreates a previously-run workflow execution that will point to the original execution so that propeller will
	// only start executing from the last known failure point. Propeller can recover individual workflow execution nodes
	// which previously succeeded based on the recovery (original) workflow execution id.
	RecoverExecution(ctx context.Context, request admin.ExecutionRecoverRequest, requestedAt time.Time) (
		*admin.ExecutionCreateResponse, error)
	CreateWorkflowEvent(ctx context.Context, request admin.WorkflowExecutionEventRequest) (
		*admin.WorkflowExecutionEventResponse, error)
	GetExecution(ctx context.Context, request admin.WorkflowExecutionGetRequest) (*admin.Execution, error)
	UpdateExecution(ctx context.Context, request admin.ExecutionUpdateRequest, requestedAt time.Time) (
		*admin.ExecutionUpdateResponse, error)
	GetExecutionData(ctx context.Context, request admin.WorkflowExecutionGetDataRequest) (
		*admin.WorkflowExecutionGetDataResponse, error)
	ListExecutions(ctx context.Context, request admin.ResourceListRequest) (*admin.ExecutionList, error)
	TerminateExecution(
		ctx context.Context, request admin.ExecutionTerminateRequest) (*admin.ExecutionTerminateResponse, error)
}

Interface for managing Nebula Workflow Executions

type LaunchPlanInterface

type LaunchPlanInterface interface {
	// Interface to create Launch Plans based on the request.
	CreateLaunchPlan(ctx context.Context, request admin.LaunchPlanCreateRequest) (
		*admin.LaunchPlanCreateResponse, error)
	UpdateLaunchPlan(ctx context.Context, request admin.LaunchPlanUpdateRequest) (
		*admin.LaunchPlanUpdateResponse, error)
	GetLaunchPlan(ctx context.Context, request admin.ObjectGetRequest) (
		*admin.LaunchPlan, error)
	GetActiveLaunchPlan(ctx context.Context, request admin.ActiveLaunchPlanRequest) (
		*admin.LaunchPlan, error)
	ListLaunchPlans(ctx context.Context, request admin.ResourceListRequest) (
		*admin.LaunchPlanList, error)
	ListActiveLaunchPlans(ctx context.Context, request admin.ActiveLaunchPlanListRequest) (
		*admin.LaunchPlanList, error)
	ListLaunchPlanIds(ctx context.Context, request admin.NamedEntityIdentifierListRequest) (
		*admin.NamedEntityIdentifierList, error)
}

Interface for managing Nebula Launch Plans

type MetricsInterface

type MetricsInterface interface {
	GetExecutionMetrics(ctx context.Context, request admin.WorkflowExecutionGetMetricsRequest) (
		*admin.WorkflowExecutionGetMetricsResponse, error)
}

Interface for managing Nebula execution metrics

type NamedEntityInterface

type NamedEntityInterface interface {
	GetNamedEntity(ctx context.Context, request admin.NamedEntityGetRequest) (*admin.NamedEntity, error)
	UpdateNamedEntity(ctx context.Context, request admin.NamedEntityUpdateRequest) (*admin.NamedEntityUpdateResponse, error)
	ListNamedEntities(ctx context.Context, request admin.NamedEntityListRequest) (*admin.NamedEntityList, error)
}

Interface for managing metadata associated with NamedEntityIdentifiers

type NodeExecutionInterface

type NodeExecutionInterface interface {
	CreateNodeEvent(ctx context.Context, request admin.NodeExecutionEventRequest) (
		*admin.NodeExecutionEventResponse, error)
	GetNodeExecution(ctx context.Context, request admin.NodeExecutionGetRequest) (*admin.NodeExecution, error)
	ListNodeExecutions(ctx context.Context, request admin.NodeExecutionListRequest) (*admin.NodeExecutionList, error)
	ListNodeExecutionsForTask(ctx context.Context, request admin.NodeExecutionForTaskListRequest) (*admin.NodeExecutionList, error)
	GetNodeExecutionData(
		ctx context.Context, request admin.NodeExecutionGetDataRequest) (*admin.NodeExecutionGetDataResponse, error)
}

Interface for managing Nebula Workflow NodeExecutions

type ProjectInterface

type ProjectInterface interface {
	CreateProject(ctx context.Context, request admin.ProjectRegisterRequest) (*admin.ProjectRegisterResponse, error)
	ListProjects(ctx context.Context, request admin.ProjectListRequest) (*admin.Projects, error)
	UpdateProject(ctx context.Context, request admin.Project) (*admin.ProjectUpdateResponse, error)
}

Interface for managing projects (and domains).

type ResourceInterface

type ResourceInterface interface {
	ListAll(ctx context.Context, request admin.ListMatchableAttributesRequest) (
		*admin.ListMatchableAttributesResponse, error)
	GetResource(ctx context.Context, request ResourceRequest) (*ResourceResponse, error)

	UpdateProjectAttributes(ctx context.Context, request admin.ProjectAttributesUpdateRequest) (
		*admin.ProjectAttributesUpdateResponse, error)
	GetProjectAttributes(ctx context.Context, request admin.ProjectAttributesGetRequest) (
		*admin.ProjectAttributesGetResponse, error)
	DeleteProjectAttributes(ctx context.Context, request admin.ProjectAttributesDeleteRequest) (
		*admin.ProjectAttributesDeleteResponse, error)

	UpdateProjectDomainAttributes(ctx context.Context, request admin.ProjectDomainAttributesUpdateRequest) (
		*admin.ProjectDomainAttributesUpdateResponse, error)
	GetProjectDomainAttributes(ctx context.Context, request admin.ProjectDomainAttributesGetRequest) (
		*admin.ProjectDomainAttributesGetResponse, error)
	DeleteProjectDomainAttributes(ctx context.Context, request admin.ProjectDomainAttributesDeleteRequest) (
		*admin.ProjectDomainAttributesDeleteResponse, error)

	UpdateWorkflowAttributes(ctx context.Context, request admin.WorkflowAttributesUpdateRequest) (
		*admin.WorkflowAttributesUpdateResponse, error)
	GetWorkflowAttributes(ctx context.Context, request admin.WorkflowAttributesGetRequest) (
		*admin.WorkflowAttributesGetResponse, error)
	DeleteWorkflowAttributes(ctx context.Context, request admin.WorkflowAttributesDeleteRequest) (
		*admin.WorkflowAttributesDeleteResponse, error)
}

ResourceInterface manages project, domain and workflow -specific attributes.

type ResourceRequest

type ResourceRequest struct {
	Project      string
	Domain       string
	Workflow     string
	LaunchPlan   string
	ResourceType admin.MatchableResource
}

TODO we can move this to nebulaidl, once we are exposing an endpoint

type ResourceResponse

type ResourceResponse struct {
	Project      string
	Domain       string
	Workflow     string
	LaunchPlan   string
	ResourceType string
	Attributes   *admin.MatchingAttributes
}

type SignalInterface

type SignalInterface interface {
	GetOrCreateSignal(ctx context.Context, request admin.SignalGetOrCreateRequest) (*admin.Signal, error)
	ListSignals(ctx context.Context, request admin.SignalListRequest) (*admin.SignalList, error)
	SetSignal(ctx context.Context, request admin.SignalSetRequest) (*admin.SignalSetResponse, error)
}

Interface for managing Nebula Signals

type TaskExecutionInterface

type TaskExecutionInterface interface {
	CreateTaskExecutionEvent(ctx context.Context, request admin.TaskExecutionEventRequest) (
		*admin.TaskExecutionEventResponse, error)
	GetTaskExecution(ctx context.Context, request admin.TaskExecutionGetRequest) (*admin.TaskExecution, error)
	ListTaskExecutions(ctx context.Context, request admin.TaskExecutionListRequest) (*admin.TaskExecutionList, error)
	GetTaskExecutionData(
		ctx context.Context, request admin.TaskExecutionGetDataRequest) (*admin.TaskExecutionGetDataResponse, error)
}

Interface for managing Nebula Workflow TaskExecutions

type TaskInterface

type TaskInterface interface {
	CreateTask(ctx context.Context, request admin.TaskCreateRequest) (*admin.TaskCreateResponse, error)
	GetTask(ctx context.Context, request admin.ObjectGetRequest) (*admin.Task, error)
	ListTasks(ctx context.Context, request admin.ResourceListRequest) (*admin.TaskList, error)
	ListUniqueTaskIdentifiers(ctx context.Context, request admin.NamedEntityIdentifierListRequest) (
		*admin.NamedEntityIdentifierList, error)
}

Interface for managing Nebula Tasks

type VersionInterface

type VersionInterface interface {
	GetVersion(ctx context.Context, r *admin.GetVersionRequest) (*admin.GetVersionResponse, error)
}

Interface for managing Nebula admin version

type WorkflowInterface

type WorkflowInterface interface {
	CreateWorkflow(ctx context.Context, request admin.WorkflowCreateRequest) (*admin.WorkflowCreateResponse, error)
	GetWorkflow(ctx context.Context, request admin.ObjectGetRequest) (*admin.Workflow, error)
	ListWorkflows(ctx context.Context, request admin.ResourceListRequest) (*admin.WorkflowList, error)
	ListWorkflowIdentifiers(ctx context.Context, request admin.NamedEntityIdentifierListRequest) (
		*admin.NamedEntityIdentifierList, error)
}

Interface for managing Nebula Workflows

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL