workflows

package
v0.0.0-...-065b08c Latest Latest
Warning

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

Go to latest
Published: Nov 5, 2024 License: MIT Imports: 14 Imported by: 0

Documentation

Index

Constants

View Source
const (

	// namespace management workflow types
	GetNamespaceWorkflowType                      = workflowPrefix + "get-namespace"
	GetNamespacesWorkflowType                     = workflowPrefix + "get-namespaces"
	GetAllNamespacesWorkflowType                  = workflowPrefix + "get-all-namespaces"
	GetNamespaceWithNameWorkflow                  = workflowPrefix + "get-namespace-with-name"
	GetAllNamespacesWithAccessToNamespaceWorkflow = workflowPrefix + "get-all-namespaces-with-access-to-namespace"
	CreateNamespaceWorkflowType                   = workflowPrefix + "create-namespace"
	UpdateNamespaceWorkflowType                   = workflowPrefix + "update-namespace"
	DeleteNamespaceWorkflowType                   = workflowPrefix + "delete-namespace"
	ReconcileNamespaceWorkflowType                = workflowPrefix + "reconcile-namespace"
	ReconcileNamespacesWorkflowType               = workflowPrefix + "reconcile-namespaces"
)
View Source
const (
	// async operation workflow types
	GetAsyncOperationWorkflowType = workflowPrefix + "get-async-operation"
	WaitForAsyncOperationType     = workflowPrefix + "wait-for-async-operation"
)
View Source
const (
	// region workflow types
	GetRegionWorkflowType     = workflowPrefix + "get-region"
	GetAllRegionsWorkflowType = workflowPrefix + "get-all-regions"
)
View Source
const (

	// user management workflow types
	GetUserWorkflowType                      = workflowPrefix + "get-user"
	GetUsersWorkflowType                     = workflowPrefix + "get-users"
	GetAllUsersWorkflowType                  = workflowPrefix + "get-all-users"
	GetUserWithEmailWorkflow                 = workflowPrefix + "get-user-with-email"
	GetAllUsersWithAccessToNamespaceWorkflow = workflowPrefix + "get-all-users-with-access-to-namespace"
	CreateUserWorkflowType                   = workflowPrefix + "create-user"
	UpdateUserWorkflowType                   = workflowPrefix + "update-user"
	DeleteUserWorkflowType                   = workflowPrefix + "delete-user"
	ReconcileUserWorkflowType                = workflowPrefix + "reconcile-user"
	ReconcileUsersWorkflowType               = workflowPrefix + "reconcile-users"

	// reconcile outcomes
	ReconcileOutcomeCreated   = "created"
	ReconcileOutcomeDeleted   = "deleted"
	ReconcileOutcomeUpdated   = "updated"
	ReconcileOutcomeUnchanged = "unchanged"
	ReconcileOutcomeError     = "error"
)

Variables

This section is empty.

Functions

func NewActivities

func NewActivities(client *api.Client) *activities.Activities

func Register

func Register(w worker.Worker, wf Workflows, a *activities.Activities)

Types

type AsyncOperationWorkflows

type AsyncOperationWorkflows interface {
	// Async Operations Workflows
	GetAsyncOperation(ctx workflow.Context, in *cloudservice.GetAsyncOperationRequest) (*cloudservice.GetAsyncOperationResponse, error)
	WaitForAsyncOperation(ctx workflow.Context, in *WaitForAsyncOperationInput) (*WaitForAsyncOperationOutput, error)
}

type NamespaceWorkflows

type NamespaceWorkflows interface {
	// Namespace Management Workflows
	GetNamespace(ctx workflow.Context, in *cloudservice.GetNamespaceRequest) (*cloudservice.GetNamespaceResponse, error)
	GetNamespaces(ctx workflow.Context, in *cloudservice.GetNamespacesRequest) (*cloudservice.GetNamespacesResponse, error)
	GetAllNamespaces(ctx workflow.Context) ([]*namespace.Namespace, error)
	GetNamespaceWithName(ctx workflow.Context, name string) (*namespace.Namespace, error)
	CreateNamespace(ctx workflow.Context, in *cloudservice.CreateNamespaceRequest) (*cloudservice.CreateNamespaceResponse, error)
	UpdateNamespace(ctx workflow.Context, in *cloudservice.UpdateNamespaceRequest) (*cloudservice.UpdateNamespaceResponse, error)
	DeleteNamespace(ctx workflow.Context, in *cloudservice.DeleteNamespaceRequest) (*cloudservice.DeleteNamespaceResponse, error)
	ReconcileNamespace(ctx workflow.Context, in *ReconcileNamespaceInput) (*ReconcileNamespaceOutput, error)
	ReconcileNamespaces(ctx workflow.Context, in *ReconcileNamespacesInput) (*ReconcileNamespacesOutput, error)
}

type ReconcileNamespaceInput

type ReconcileNamespaceInput struct {
	Spec *namespace.NamespaceSpec `required:"true" json:"spec"`
}

type ReconcileNamespaceOutput

type ReconcileNamespaceOutput struct {
	Namespace *namespace.Namespace `json:"namespace"`
	Outcome   ReconcileOutcome     `json:"outcome"`
	Error     string               `json:"error"`
}

type ReconcileNamespacesInput

type ReconcileNamespacesInput struct {
	Specs             []*namespace.NamespaceSpec `required:"true" json:"specs"`
	DeleteUnaccounted bool                       `json:"delete_unaccounted"`
}

type ReconcileNamespacesOutput

type ReconcileNamespacesOutput struct {
	Results []*ReconcileNamespaceOutput `json:"results"`
}

type ReconcileOutcome

type ReconcileOutcome string

type ReconcileUserInput

type ReconcileUserInput struct {
	Spec *identity.UserSpec `required:"true" json:"spec"`
}

type ReconcileUserOutput

type ReconcileUserOutput struct {
	User    *identity.User   `json:"user"`
	Outcome ReconcileOutcome `json:"outcome"`
	Error   string           `json:"error"`
}

type ReconcileUsersInput

type ReconcileUsersInput struct {
	Specs             []*identity.UserSpec `required:"true" json:"specs"`
	DeleteUnaccounted bool                 `json:"delete_unaccounted"`
}

type ReconcileUsersOutput

type ReconcileUsersOutput struct {
	Results []*ReconcileUserOutput `json:"results"`
}

type RegionWorkflows

type RegionWorkflows interface {
	// Region Management Workflows
	GetRegion(ctx workflow.Context, in *cloudservice.GetRegionRequest) (*cloudservice.GetRegionResponse, error)
	GetAllRegions(ctx workflow.Context, in *cloudservice.GetRegionsRequest) (*cloudservice.GetRegionsResponse, error)
}

type UserWorkflows

type UserWorkflows interface {
	// User Management Workflows
	GetUser(ctx workflow.Context, in *cloudservice.GetUserRequest) (*cloudservice.GetUserResponse, error)
	GetUsers(ctx workflow.Context, in *cloudservice.GetUsersRequest) (*cloudservice.GetUsersResponse, error)
	GetAllUsers(ctx workflow.Context) ([]*identity.User, error)
	GetUserWithEmail(ctx workflow.Context, email string) (*identity.User, error)
	GetAllUsersWithAccessToNamespace(ctx workflow.Context, namespace string) ([]*identity.User, error)
	CreateUser(ctx workflow.Context, in *cloudservice.CreateUserRequest) (*cloudservice.CreateUserResponse, error)
	UpdateUser(ctx workflow.Context, in *cloudservice.UpdateUserRequest) (*cloudservice.UpdateUserResponse, error)
	DeleteUser(ctx workflow.Context, in *cloudservice.DeleteUserRequest) (*cloudservice.DeleteUserResponse, error)
	ReconcileUser(ctx workflow.Context, in *ReconcileUserInput) (*ReconcileUserOutput, error)
	ReconcileUsers(ctx workflow.Context, in *ReconcileUsersInput) (*ReconcileUsersOutput, error)
}

type WaitForAsyncOperationInput

type WaitForAsyncOperationInput struct {
	AsyncOperationID string        `required:"true"`
	Timeout          time.Duration `required:"true"`
}

type WaitForAsyncOperationOutput

type WaitForAsyncOperationOutput struct {
	AsyncOperation *operation.AsyncOperation
}

type Workflows

func NewWorkflows

func NewWorkflows() Workflows

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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