step

package
v3.0.0-...-bcda2dc Latest Latest
Warning

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

Go to latest
Published: Dec 7, 2021 License: MIT Imports: 20 Imported by: 0

Documentation

Overview

Package step provides functionality to work with AWS Step Functions

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type APIGatewayTaskParameters

type APIGatewayTaskParameters struct {
	APIEndpoint     string                 `json:"ApiEndpoint,omitempty"`
	Method          string                 `json:",omitempty"`
	Headers         map[string]interface{} `json:",omitempty"`
	Stage           string                 `json:",omitempty"`
	Path            string                 `json:",omitempty"`
	QueryParameters map[string]interface{} `json:",omitempty"`
	RequestBody     string                 `json:",omitempty"`
	AuthType        string                 `json:",omitempty"`
}

APIGatewayTaskParameters represents params for the SNS notification Ref: https://docs.aws.amazon.com/sns/latest/api/API_Publish.html#API_Publish_RequestParameters

type APIGatewayTaskState

type APIGatewayTaskState struct {
	BaseTask
	// contains filtered or unexported fields
}

APIGatewayTaskState represents bindings for https://docs.aws.amazon.com/step-functions/latest/dg/connectors-sns.html

func NewAPIGatewayTaskState

func NewAPIGatewayTaskState(stateName string,
	parameters APIGatewayTaskParameters) *APIGatewayTaskState

NewAPIGatewayTaskState returns an initialized APIGatewayTaskState

func (*APIGatewayTaskState) MarshalJSON

func (sts *APIGatewayTaskState) MarshalJSON() ([]byte, error)

MarshalJSON for custom marshalling, since this will be stringified and we need it to turn into a stringified Ref: https://docs.aws.amazon.com/step-functions/latest/dg/connectors-sns.html

type AWSSDKState

type AWSSDKState struct {
	BaseTask
	// contains filtered or unexported fields
}

DynamoDBGetItemState represents bindings for https://docs.aws.amazon.com/step-functions/latest/dg/connectors-ddb.html

func NewAWSSDKIntegrationState

func NewAWSSDKIntegrationState(stateName string,
	serviceName string,
	apiAction string,
	serviceIntegrationPattern string,
	parameters map[string]interface{}) *AWSSDKState

NewAWSSDKIntegrationState returns an initialized AWSSDKState state

func NewAWSSDKState

func NewAWSSDKState(stateName string,
	serviceName string,
	apiAction string,
	serviceIntegrationPattern string,
	parameters map[string]interface{}) *AWSSDKState

NewAWSSDKState returns an initialized AWSSDKState state

func (*AWSSDKState) MarshalJSON

func (awsstate *AWSSDKState) MarshalJSON() ([]byte, error)

MarshalJSON for custom marshalling, since this will be stringified and we need it to turn into a stringified Ref: https://aws.amazon.com/blogs/aws/now-aws-step-functions-supports-200-aws-services-to-enable-easier-workflow-automation/

type And

type And struct {
	ChoiceBranch
	Comparison []Comparison
	Next       MachineState
}

And operator

func (*And) MarshalJSON

func (andOperation *And) MarshalJSON() ([]byte, error)

MarshalJSON for custom marshalling

type BaseTask

type BaseTask struct {
	ResultPath string
	//lint:ignore ST1011 we want to give a cue to the client of the units
	TimeoutSeconds time.Duration
	//lint:ignore ST1011 we want to give a cue to the client of the units
	HeartbeatSeconds time.Duration
	LambdaDecorator  sparta.TemplateDecorator
	Retriers         []*TaskRetry
	Catchers         []*TaskCatch
	// contains filtered or unexported fields
}

BaseTask represents the core BaseTask control flow options.

func (*BaseTask) AdjacentStates

func (bt *BaseTask) AdjacentStates() []MachineState

AdjacentStates returns nodes reachable from this node

func (*BaseTask) MarshalJSON

func (bt *BaseTask) MarshalJSON() ([]byte, error)

MarshalJSON to prevent inadvertent composition

func (*BaseTask) Name

func (bt *BaseTask) Name() string

Name returns the name of this Task state

func (*BaseTask) Next

func (bt *BaseTask) Next(nextState MachineState) MachineState

Next returns the next state

func (*BaseTask) WithCatchers

func (bt *BaseTask) WithCatchers(catch ...*TaskCatch) *BaseTask

WithCatchers is the fluent builder for BaseTask

func (*BaseTask) WithComment

func (bt *BaseTask) WithComment(comment string) TransitionState

WithComment returns the BaseTask comment

func (*BaseTask) WithHeartbeat

func (bt *BaseTask) WithHeartbeat(pulse time.Duration) *BaseTask

WithHeartbeat is the fluent builder for BaseTask

func (*BaseTask) WithInputPath

func (bt *BaseTask) WithInputPath(inputPath string) TransitionState

WithInputPath returns the BaseTask input data selector

func (*BaseTask) WithOutputPath

func (bt *BaseTask) WithOutputPath(outputPath string) TransitionState

WithOutputPath returns the BaseTask output data selector

func (*BaseTask) WithResultPath

func (bt *BaseTask) WithResultPath(resultPath string) *BaseTask

WithResultPath is the fluent builder for the result path

func (*BaseTask) WithRetriers

func (bt *BaseTask) WithRetriers(retries ...*TaskRetry) *BaseTask

WithRetriers is the fluent builder for BaseTask

func (*BaseTask) WithTimeout

func (bt *BaseTask) WithTimeout(timeout time.Duration) *BaseTask

WithTimeout is the fluent builder for BaseTask

type BatchTaskParameters

type BatchTaskParameters struct {
	JobDefinition      string                   `json:",omitempty"`
	JobName            string                   `json:",omitempty"`
	JobQueue           string                   `json:",omitempty"`
	ArrayProperties    map[string]interface{}   `json:",omitempty"`
	ContainerOverrides []map[string]interface{} `json:",omitempty"`
	DependsOn          []map[string]interface{} `json:",omitempty"`
	Parameters         map[string]string        `json:",omitempty"`
	RetryStrategy      map[string]interface{}   `json:",omitempty"`
	Timeout            map[string]interface{}   `json:",omitempty"`
}

BatchTaskParameters represents params for the Batch notification Ref: https://docs.aws.amazon.com/step-functions/latest/dg/connectors-batch.html

type BatchTaskState

type BatchTaskState struct {
	BaseTask
	// contains filtered or unexported fields
}

BatchTaskState represents bindings for https://docs.aws.amazon.com/step-functions/latest/dg/connectors-batch.html

func NewBatchTaskState

func NewBatchTaskState(stateName string,
	parameters BatchTaskParameters) *BatchTaskState

NewBatchTaskState returns an initialized BatchTaskState

func (*BatchTaskState) MarshalJSON

func (bts *BatchTaskState) MarshalJSON() ([]byte, error)

MarshalJSON for custom marshalling, since this will be stringified and we need it to turn into a stringified Ref: https://docs.aws.amazon.com/step-functions/latest/dg/connectors-batch.html

type BooleanEquals

type BooleanEquals struct {
	Comparison
	Variable string
	Value    interface{}
}

BooleanEquals comparison

func (*BooleanEquals) MarshalJSON

func (cmp *BooleanEquals) MarshalJSON() ([]byte, error)

MarshalJSON for custom marshalling

type BooleanEqualsPath

type BooleanEqualsPath struct {
	Comparison
	Variable string
	Value    string
}

BooleanEqualsPath comparison

func (*BooleanEqualsPath) MarshalJSON

func (cmp *BooleanEqualsPath) MarshalJSON() ([]byte, error)

MarshalJSON for custom marshalling

type ChoiceBranch

type ChoiceBranch interface {
	// contains filtered or unexported methods
}

ChoiceBranch represents a type for a ChoiceState "Choices" entry

type ChoiceState

type ChoiceState struct {
	Choices []ChoiceBranch
	Default TransitionState
	// contains filtered or unexported fields
}

ChoiceState is a synthetic state that executes a lot of independent branches in parallel

func NewChoiceState

func NewChoiceState(choiceStateName string, choices ...ChoiceBranch) *ChoiceState

NewChoiceState returns a "ChoiceState" with the supplied information

func (*ChoiceState) MarshalJSON

func (cs *ChoiceState) MarshalJSON() ([]byte, error)

MarshalJSON for custom marshalling

func (*ChoiceState) Name

func (cs *ChoiceState) Name() string

Name returns the name of this Task state

func (*ChoiceState) WithComment

func (cs *ChoiceState) WithComment(comment string) *ChoiceState

WithComment returns the TaskState comment

func (*ChoiceState) WithDefault

func (cs *ChoiceState) WithDefault(defaultState TransitionState) *ChoiceState

WithDefault is the fluent builder for the default state

func (*ChoiceState) WithResultPath

func (cs *ChoiceState) WithResultPath(resultPath string) *ChoiceState

WithResultPath is the fluent builder for the result path

type Comparison

type Comparison interface {
	json.Marshaler
}

Comparison is the generic comparison operator interface

type DynamoDBGetItemParameters

type DynamoDBGetItemParameters struct {
	Key                      map[string]awsv2DynamoTypes.AttributeValue `json:",omitempty"`
	TableName                string                                     `json:",omitempty"`
	AttributesToGet          []string                                   `json:",omitempty"`
	ConsistentRead           bool                                       `json:",omitempty"`
	ExpressionAttributeNames map[string]string                          `json:",omitempty"`
	ProjectionExpression     string                                     `json:",omitempty"`
	ReturnConsumedCapacity   string                                     `json:",omitempty"`
}

DynamoDBGetItemParameters represents params for the DynamoDBGetItem parameters. Ref: https://docs.aws.amazon.com/step-functions/latest/dg/connectors-ddb.html

type DynamoDBGetItemState

type DynamoDBGetItemState struct {
	BaseTask
	// contains filtered or unexported fields
}

DynamoDBGetItemState represents bindings for https://docs.aws.amazon.com/step-functions/latest/dg/connectors-ddb.html

func NewDynamoDBGetItemState

func NewDynamoDBGetItemState(stateName string,
	parameters DynamoDBGetItemParameters) *DynamoDBGetItemState

NewDynamoDBGetItemState returns an initialized DynamoDB GetItem state

func (*DynamoDBGetItemState) MarshalJSON

func (dgis *DynamoDBGetItemState) MarshalJSON() ([]byte, error)

MarshalJSON for custom marshalling, since this will be stringified and we need it to turn into a stringified Ref: https://docs.aws.amazon.com/step-functions/latest/dg/connectors-sns.html

type DynamoDBPutItemParameters

type DynamoDBPutItemParameters struct {
	Item                        map[string]*awsv2DynamoTypes.AttributeValue
	TableName                   string
	ConditionExpression         string
	ConsistentRead              bool
	ExpressionAttributeNames    map[string]string
	ExpressionAttributeValues   map[string]*awsv2DynamoTypes.AttributeValue
	ReturnConsumedCapacity      string // INDEXES | TOTAL | NONE
	ReturnItemCollectionMetrics string // SIZE | NONE
	ReturnValues                string // NONE | ALL_OLD | UPDATED_OLD | ALL_NEW | UPDATED_NEW
}

DynamoDBPutItemParameters represents params for the SNS notification Ref: https://docs.aws.amazon.com/sns/latest/api/API_Publish.html#API_Publish_RequestParameters

type DynamoDBPutItemState

type DynamoDBPutItemState struct {
	BaseTask
	// contains filtered or unexported fields
}

DynamoDBPutItemState represents bindings for https://docs.aws.amazon.com/step-functions/latest/dg/connectors-ddb.html

func NewDynamoDBPutItemState

func NewDynamoDBPutItemState(stateName string,
	parameters DynamoDBPutItemParameters) *DynamoDBPutItemState

NewDynamoDBPutItemState returns an initialized DynamoDB PutItem state

func (*DynamoDBPutItemState) MarshalJSON

func (dgis *DynamoDBPutItemState) MarshalJSON() ([]byte, error)

MarshalJSON for custom marshalling, since this will be stringified and we need it to turn into a stringified Ref: https://docs.aws.amazon.com/step-functions/latest/dg/connectors-sns.html

type FailState

type FailState struct {
	ErrorName string
	Cause     error
	// contains filtered or unexported fields
}

FailState represents the end of state machine

func NewFailState

func NewFailState(failStateName string, errorName string, cause error) *FailState

NewFailState returns a "FailState" with the supplied information

func (*FailState) AdjacentStates

func (fs *FailState) AdjacentStates() []MachineState

AdjacentStates returns nodes reachable from this node

func (*FailState) MarshalJSON

func (fs *FailState) MarshalJSON() ([]byte, error)

MarshalJSON for custom marshaling

func (*FailState) Name

func (fs *FailState) Name() string

Name returns the WaitDelay name

func (*FailState) Next

func (fs *FailState) Next(nextState MachineState) MachineState

Next sets the step after the wait delay

func (*FailState) WithComment

func (fs *FailState) WithComment(comment string) TransitionState

WithComment returns the WaitDelay comment

func (*FailState) WithInputPath

func (fs *FailState) WithInputPath(inputPath string) TransitionState

WithInputPath returns the TaskState input data selector

func (*FailState) WithOutputPath

func (fs *FailState) WithOutputPath(outputPath string) TransitionState

WithOutputPath returns the TaskState output data selector

type FargateNetworkConfiguration

type FargateNetworkConfiguration struct {
	AWSVPCConfiguration *gofecs.Service_AwsVpcConfiguration `json:"AwsvpcConfiguration,omitempty"`
}

FargateNetworkConfiguration contains the AWSVPCConfiguration information

type FargateTaskParameters

type FargateTaskParameters struct {
	Cluster              string                       `json:",omitempty"`
	Group                string                       `json:",omitempty"`
	LaunchType           string                       `json:",omitempty"`
	NetworkConfiguration *FargateNetworkConfiguration `json:",omitempty"`
	Overrides            map[string]interface{}       `json:",omitempty"`
	PlacementConstraints []map[string]string          `json:",omitempty"`
	PlacementStrategy    []map[string]string          `json:",omitempty"`
	PlatformVersion      string                       `json:",omitempty"`
	TaskDefinition       string                       `json:",omitempty"`
}

FargateTaskParameters contains the information for a Fargate task

type FargateTaskState

type FargateTaskState struct {
	BaseTask
	// contains filtered or unexported fields
}

FargateTaskState represents a FargateTask

func NewFargateTaskState

func NewFargateTaskState(stateName string, parameters FargateTaskParameters) *FargateTaskState

NewFargateTaskState returns an initialized FargateTaskState

func (*FargateTaskState) MarshalJSON

func (fts *FargateTaskState) MarshalJSON() ([]byte, error)

MarshalJSON for custom marshalling, since this will be stringified and we need it to turn into a stringified Ref: https://docs.aws.amazon.com/step-functions/latest/dg/connectors-ecs.html

type GlueParameters

type GlueParameters struct {
	JobName               string                 `json:",omitempty"`
	JobRunID              string                 `json:"JobRunId,omitempty"`
	Arguments             map[string]interface{} `json:",omitempty"`
	AllocatedCapacity     int                    `json:",omitempty"`
	Timeout               int                    `json:",omitempty"`
	SecurityConfiguration string                 `json:",omitempty"`
	NotificationProperty  interface{}            `json:",omitempty"`
}

GlueParameters represents params for Glue step Ref: https://docs.aws.amazon.com/step-functions/latest/dg/connectors-glue.html

type GlueState

type GlueState struct {
	BaseTask
	// contains filtered or unexported fields
}

GlueState represents bindings for https://docs.aws.amazon.com/step-functions/latest/dg/connectors-sns.html

func NewGlueState

func NewGlueState(stateName string,
	parameters GlueParameters) *GlueState

NewGlueState returns an initialized GlueState

func (*GlueState) MarshalJSON

func (gs *GlueState) MarshalJSON() ([]byte, error)

MarshalJSON for custom marshalling, since this will be stringified and we need it to turn into a stringified Ref: https://docs.aws.amazon.com/step-functions/latest/dg/connectors-sns.html

type IsBoolean

type IsBoolean struct {
	Comparison
	Variable string
	Value    string
}

IsBoolean comparison

func (*IsBoolean) MarshalJSON

func (cmp *IsBoolean) MarshalJSON() ([]byte, error)

MarshalJSON for custom marshalling

type IsNull

type IsNull struct {
	Comparison
	Variable string
	Value    string
}

IsNull comparison

func (*IsNull) MarshalJSON

func (cmp *IsNull) MarshalJSON() ([]byte, error)

MarshalJSON for custom marshalling

type IsNumeric

type IsNumeric struct {
	Comparison
	Variable string
	Value    string
}

IsNumeric comparison

func (*IsNumeric) MarshalJSON

func (cmp *IsNumeric) MarshalJSON() ([]byte, error)

MarshalJSON for custom marshalling

type IsPresent

type IsPresent struct {
	Comparison
	Variable string
	Value    string
}

IsPresent comparison

func (*IsPresent) MarshalJSON

func (cmp *IsPresent) MarshalJSON() ([]byte, error)

MarshalJSON for custom marshalling

type IsString

type IsString struct {
	Comparison
	Variable string
	Value    string
}

IsString comparison

func (*IsString) MarshalJSON

func (cmp *IsString) MarshalJSON() ([]byte, error)

MarshalJSON for custom marshalling

type IsTimestamp

type IsTimestamp struct {
	Comparison
	Variable string
	Value    string
}

IsTimestamp comparison

func (*IsTimestamp) MarshalJSON

func (cmp *IsTimestamp) MarshalJSON() ([]byte, error)

MarshalJSON for custom marshalling

type LambdaTaskState

type LambdaTaskState struct {
	BaseTask
	// contains filtered or unexported fields
}

LambdaTaskState is the core state, responsible for delegating to a Lambda function

func NewLambdaTaskState

func NewLambdaTaskState(stateName string, lambdaFn *sparta.LambdaAWSInfo) *LambdaTaskState

NewLambdaTaskState returns a LambdaTaskState instance properly initialized

func (*LambdaTaskState) MarshalJSON

func (ts *LambdaTaskState) MarshalJSON() ([]byte, error)

MarshalJSON for custom marshalling, since this will be stringified and we need it to turn into a stringified Ref:

type MachineState

type MachineState interface {
	Name() string
	// contains filtered or unexported methods
}

MachineState is the base state for all AWS Step function

type MapState

type MapState struct {
	States         *StateMachine
	Parameters     map[string]interface{}
	ResultPath     string
	ItemsPath      string // optional
	MaxConcurrency int    //optional
	Retriers       []*TaskRetry
	Catchers       []*TaskCatch
	// contains filtered or unexported fields
}

MapState is a synthetic state that executes a dynamically determined set of nodes in parallel

func NewMapState

func NewMapState(parallelStateName string, states *StateMachine) *MapState

NewMapState returns a "MapState" with the supplied information

func (*MapState) AdjacentStates

func (ms *MapState) AdjacentStates() []MachineState

AdjacentStates returns nodes reachable from this node

func (*MapState) MarshalJSON

func (ms *MapState) MarshalJSON() ([]byte, error)

MarshalJSON for custom marshalling

func (*MapState) Name

func (ms *MapState) Name() string

Name returns the name of this Task state

func (*MapState) Next

func (ms *MapState) Next(nextState MachineState) MachineState

Next returns the next state

func (*MapState) WithCatchers

func (ms *MapState) WithCatchers(catch ...*TaskCatch) *MapState

WithCatchers is the fluent builder for TaskState

func (*MapState) WithComment

func (ms *MapState) WithComment(comment string) TransitionState

WithComment returns the TaskState comment

func (*MapState) WithInputPath

func (ms *MapState) WithInputPath(inputPath string) TransitionState

WithInputPath returns the TaskState input data selector

func (*MapState) WithOutputPath

func (ms *MapState) WithOutputPath(outputPath string) TransitionState

WithOutputPath returns the TaskState output data selector

func (*MapState) WithResultPath

func (ms *MapState) WithResultPath(resultPath string) *MapState

WithResultPath is the fluent builder for the result path

func (*MapState) WithRetriers

func (ms *MapState) WithRetriers(retries ...*TaskRetry) *MapState

WithRetriers is the fluent builder for TaskState

type Not

type Not struct {
	ChoiceBranch
	Comparison Comparison
	Next       MachineState
}

Not operator

func (*Not) MarshalJSON

func (notOperation *Not) MarshalJSON() ([]byte, error)

MarshalJSON for custom marshalling

type NumericEquals

type NumericEquals struct {
	Comparison
	Variable string
	Value    int64
}

NumericEquals comparison

func (*NumericEquals) MarshalJSON

func (cmp *NumericEquals) MarshalJSON() ([]byte, error)

MarshalJSON for custom marshalling

type NumericEqualsPath

type NumericEqualsPath struct {
	Comparison
	Variable string
	Value    string
}

NumericEqualsPath comparison

func (*NumericEqualsPath) MarshalJSON

func (cmp *NumericEqualsPath) MarshalJSON() ([]byte, error)

MarshalJSON for custom marshalling

type NumericGreaterThan

type NumericGreaterThan struct {
	Comparison
	Variable string
	Value    int64
}

NumericGreaterThan comparison

func (*NumericGreaterThan) MarshalJSON

func (cmp *NumericGreaterThan) MarshalJSON() ([]byte, error)

MarshalJSON for custom marshalling

type NumericGreaterThanEquals

type NumericGreaterThanEquals struct {
	Comparison
	Variable string
	Value    int64
}

NumericGreaterThanEquals comparison

func (*NumericGreaterThanEquals) MarshalJSON

func (cmp *NumericGreaterThanEquals) MarshalJSON() ([]byte, error)

MarshalJSON for custom marshalling

type NumericGreaterThanEqualsPath

type NumericGreaterThanEqualsPath struct {
	Comparison
	Variable string
	Value    string
}

NumericGreaterThanEqualsPath comparison

func (*NumericGreaterThanEqualsPath) MarshalJSON

func (cmp *NumericGreaterThanEqualsPath) MarshalJSON() ([]byte, error)

MarshalJSON for custom marshalling

type NumericGreaterThanPath

type NumericGreaterThanPath struct {
	Comparison
	Variable string
	Value    string
}

NumericGreaterThanPath comparison

func (*NumericGreaterThanPath) MarshalJSON

func (cmp *NumericGreaterThanPath) MarshalJSON() ([]byte, error)

MarshalJSON for custom marshalling

type NumericLessThan

type NumericLessThan struct {
	Comparison
	Variable string
	Value    int64
}

NumericLessThan comparison

func (*NumericLessThan) MarshalJSON

func (cmp *NumericLessThan) MarshalJSON() ([]byte, error)

MarshalJSON for custom marshalling

type NumericLessThanEquals

type NumericLessThanEquals struct {
	Comparison
	Variable string
	Value    int64
}

NumericLessThanEquals comparison

func (*NumericLessThanEquals) MarshalJSON

func (cmp *NumericLessThanEquals) MarshalJSON() ([]byte, error)

MarshalJSON for custom marshalling

type NumericLessThanEqualsPath

type NumericLessThanEqualsPath struct {
	Comparison
	Variable string
	Value    string
}

NumericLessThanEqualsPath comparison

func (*NumericLessThanEqualsPath) MarshalJSON

func (cmp *NumericLessThanEqualsPath) MarshalJSON() ([]byte, error)

MarshalJSON for custom marshalling

type NumericLessThanPath

type NumericLessThanPath struct {
	Comparison
	Variable string
	Value    string
}

NumericLessThanPath comparison

func (*NumericLessThanPath) MarshalJSON

func (cmp *NumericLessThanPath) MarshalJSON() ([]byte, error)

MarshalJSON for custom marshalling

type Or

type Or struct {
	ChoiceBranch
	Comparison []Comparison
	Next       MachineState
}

Or operator

func (*Or) MarshalJSON

func (orOperation *Or) MarshalJSON() ([]byte, error)

MarshalJSON for custom marshalling

type ParallelState

type ParallelState struct {
	Branches   []*StateMachine
	Parameters map[string]interface{}
	ResultPath string
	Retriers   []*TaskRetry
	Catchers   []*TaskCatch
	// contains filtered or unexported fields
}

ParallelState is a synthetic state that executes a lot of independent branches in parallel

func NewParallelState

func NewParallelState(parallelStateName string, branches ...*StateMachine) *ParallelState

NewParallelState returns a "ParallelState" with the supplied information

func (*ParallelState) AdjacentStates

func (ps *ParallelState) AdjacentStates() []MachineState

AdjacentStates returns nodes reachable from this node

func (*ParallelState) MarshalJSON

func (ps *ParallelState) MarshalJSON() ([]byte, error)

MarshalJSON for custom marshalling

func (*ParallelState) Name

func (ps *ParallelState) Name() string

Name returns the name of this Task state

func (*ParallelState) Next

func (ps *ParallelState) Next(nextState MachineState) MachineState

Next returns the next state

func (*ParallelState) WithCatchers

func (ps *ParallelState) WithCatchers(catch ...*TaskCatch) *ParallelState

WithCatchers is the fluent builder for TaskState

func (*ParallelState) WithComment

func (ps *ParallelState) WithComment(comment string) TransitionState

WithComment returns the TaskState comment

func (*ParallelState) WithInputPath

func (ps *ParallelState) WithInputPath(inputPath string) TransitionState

WithInputPath returns the TaskState input data selector

func (*ParallelState) WithOutputPath

func (ps *ParallelState) WithOutputPath(outputPath string) TransitionState

WithOutputPath returns the TaskState output data selector

func (*ParallelState) WithResultPath

func (ps *ParallelState) WithResultPath(resultPath string) *ParallelState

WithResultPath is the fluent builder for the result path

func (*ParallelState) WithRetriers

func (ps *ParallelState) WithRetriers(retries ...*TaskRetry) *ParallelState

WithRetriers is the fluent builder for TaskState

type PassState

type PassState struct {
	ResultPath string
	Result     interface{}
	// contains filtered or unexported fields
}

PassState represents a NOP state

func NewPassState

func NewPassState(name string, resultData interface{}) *PassState

NewPassState returns a new PassState instance

func (*PassState) AdjacentStates

func (ps *PassState) AdjacentStates() []MachineState

AdjacentStates returns nodes reachable from this node

func (*PassState) MarshalJSON

func (ps *PassState) MarshalJSON() ([]byte, error)

MarshalJSON for custom marshalling

func (*PassState) Name

func (ps *PassState) Name() string

Name returns the name of this Task state

func (*PassState) Next

func (ps *PassState) Next(nextState MachineState) MachineState

Next returns the next state

func (*PassState) WithComment

func (ps *PassState) WithComment(comment string) TransitionState

WithComment returns the TaskState comment

func (*PassState) WithInputPath

func (ps *PassState) WithInputPath(inputPath string) TransitionState

WithInputPath returns the TaskState input data selector

func (*PassState) WithOutputPath

func (ps *PassState) WithOutputPath(outputPath string) TransitionState

WithOutputPath returns the TaskState output data selector

func (*PassState) WithResult

func (ps *PassState) WithResult(result interface{}) *PassState

WithResult is the fluent builder for the result data

func (*PassState) WithResultPath

func (ps *PassState) WithResultPath(resultPath string) *PassState

WithResultPath is the fluent builder for the result path

type SNSTaskParameters

type SNSTaskParameters struct {
	Message           string                 `json:",omitempty"`
	Subject           string                 `json:",omitempty"`
	MessageAttributes map[string]interface{} `json:",omitempty"`
	MessageStructure  string                 `json:",omitempty"`
	PhoneNumber       string                 `json:",omitempty"`
	TargetArn         string                 `json:",omitempty"`
	TopicArn          string                 `json:",omitempty"`
}

SNSTaskParameters represents params for the SNS notification Ref: https://docs.aws.amazon.com/sns/latest/api/API_Publish.html#API_Publish_RequestParameters

type SNSTaskState

type SNSTaskState struct {
	BaseTask
	// contains filtered or unexported fields
}

SNSTaskState represents bindings for https://docs.aws.amazon.com/step-functions/latest/dg/connectors-sns.html

func NewSNSTaskState

func NewSNSTaskState(stateName string,
	parameters SNSTaskParameters) *SNSTaskState

NewSNSTaskState returns an initialized SNSTaskState

func (*SNSTaskState) MarshalJSON

func (sts *SNSTaskState) MarshalJSON() ([]byte, error)

MarshalJSON for custom marshalling, since this will be stringified and we need it to turn into a stringified Ref: https://docs.aws.amazon.com/step-functions/latest/dg/connectors-sns.html

type SQSTaskParameters

type SQSTaskParameters struct {
	MessageBody            string                 `json:",omitempty"`
	QueueURL               string                 `json:",omitempty"`
	DelaySeconds           int                    `json:",omitempty"`
	MessageAttributes      map[string]interface{} `json:",omitempty"`
	MessageDeduplicationID string                 `json:"MessageDeduplicationId,omitempty"`
	MessageGroupID         string                 `json:"MessageGroupId,omitempty"`
}

SQSTaskParameters represents params for the SQS notification Ref: https://docs.aws.amazon.com/sns/latest/api/API_Publish.html#API_Publish_RequestParameters

type SQSTaskState

type SQSTaskState struct {
	BaseTask
	// contains filtered or unexported fields
}

SQSTaskState represents bindings for https://docs.aws.amazon.com/step-functions/latest/dg/connectors-sqs.html

func NewSQSTaskState

func NewSQSTaskState(stateName string,
	parameters SQSTaskParameters) *SQSTaskState

NewSQSTaskState returns an initialized SQSTaskState

func (*SQSTaskState) MarshalJSON

func (sqs *SQSTaskState) MarshalJSON() ([]byte, error)

MarshalJSON for custom marshalling, since this will be stringified and we need it to turn into a stringified Ref: https://docs.aws.amazon.com/step-functions/latest/dg/connectors-sqs.html

type SageMakerTag

type SageMakerTag struct {
	Key   string `json:",omitempty"`
	Value string `json:",omitempty"`
}

SageMakerTag represents a tag for a SageMaker task

type SageMakerTrainingJob

type SageMakerTrainingJob struct {
	BaseTask
	// contains filtered or unexported fields
}

SageMakerTrainingJob represents bindings for https://docs.aws.amazon.com/step-functions/latest/dg/connectors-sqs.html

func NewSageMakerTrainingJob

func NewSageMakerTrainingJob(stateName string,
	parameters SageMakerTrainingJobParameters) *SageMakerTrainingJob

NewSageMakerTrainingJob returns an initialized SQSTaskState

func (*SageMakerTrainingJob) MarshalJSON

func (smtj *SageMakerTrainingJob) MarshalJSON() ([]byte, error)

MarshalJSON for custom marshalling, since this will be stringified and we need it to turn into a stringified Ref: https://docs.aws.amazon.com/step-functions/latest/dg/connectors-sqs.html

type SageMakerTrainingJobParameters

type SageMakerTrainingJobParameters struct {
	AlgorithmSpecification map[string]interface{} `json:",omitempty"`
	HyperParameters        map[string]interface{} `json:",omitempty"`
	InputDataConfig        []interface{}          `json:",omitempty"`
	OutputDataConfig       map[string]interface{} `json:",omitempty"`
	ResourceConfig         map[string]interface{} `json:",omitempty"`
	RoleArn                string                 `json:",omitempty"`
	StoppingCondition      interface{}            `json:",omitempty"`
	Tags                   string                 `json:",omitempty"`
	TrainingJobName        string                 `json:",omitempty"`
	VpcConfig              map[string]interface{} `json:",omitempty"`
}

SageMakerTrainingJobParameters are the parameters for a SageMaker Training Job as defined by https://docs.aws.amazon.com/sagemaker/latest/dg/API_CreateTrainingJob.html

type SageMakerTransformJob

type SageMakerTransformJob struct {
	BaseTask
	// contains filtered or unexported fields
}

SageMakerTransformJob represents bindings for https://docs.aws.amazon.com/step-functions/latest/dg/connectors-sqs.html

func NewSageMakerTransformJob

func NewSageMakerTransformJob(stateName string,
	parameters SageMakerTransformJobParameters) *SageMakerTransformJob

NewSageMakerTransformJob returns an initialized SQSTaskState

func (*SageMakerTransformJob) MarshalJSON

func (smtj *SageMakerTransformJob) MarshalJSON() ([]byte, error)

MarshalJSON for custom marshalling, since this will be stringified and we need it to turn into a stringified Ref: https://docs.aws.amazon.com/step-functions/latest/dg/connectors-sqs.html

type SageMakerTransformJobParameters

type SageMakerTransformJobParameters struct {
	BatchStrategy           string                 `json:",omitempty"`
	Environment             map[string]string      `json:",omitempty"`
	MaxConcurrentTransforms int                    `json:",omitempty"`
	MaxPayloadInMB          int                    `json:",omitempty"`
	ModelName               string                 `json:",omitempty"`
	Tags                    []SageMakerTag         `json:",omitempty"`
	TransformInput          map[string]interface{} `json:",omitempty"`
	TransformJobName        string                 `json:",omitempty"`
	TransformOutput         map[string]interface{} `json:",omitempty"`
	TransformResources      map[string]interface{} `json:",omitempty"`
}

SageMakerTransformJobParameters are the parameters for a SageMaker Training Job as defined by https://docs.aws.amazon.com/sagemaker/latest/dg/API_CreateTransformJob.html

type StateError

type StateError string

StateError is the reserved type used for AWS Step function error names Ref: https://states-language.net/spec.html#appendix-a

const (
	// StatesAll is a wild-card which matches any Error Name.
	StatesAll StateError = "States.ALL"
	// StatesTimeout is a Task State either ran longer than the
	// “TimeoutSeconds” value, or failed to heartbeat for a time
	// longer than the “HeartbeatSeconds” value.
	StatesTimeout StateError = "States.Timeout"
	// StatesTaskFailed is a Task State failed during the execution
	StatesTaskFailed StateError = "States.TaskFailed"
	// StatesPermissions is a Task State failed because it had
	// insufficient privileges to execute the specified code.
	StatesPermissions StateError = "States.Permissions"
	// StatesResultPathMatchFailure is a Task State’s “ResultPath” field
	// cannot be applied to the input the state received
	StatesResultPathMatchFailure StateError = "States.ResultPathMatchFailure"
	// StatesBranchFailed is a branch of a Parallel state failed
	StatesBranchFailed StateError = "States.BranchFailed"
	// StatesNoChoiceMatched is a Choice state failed to find a match for the
	// condition field extracted from its input
	StatesNoChoiceMatched StateError = "States.NoChoiceMatched"
)

type StateMachine

type StateMachine struct {
	// contains filtered or unexported fields
}

StateMachine is the top level item

func NewExpressStateMachine

func NewExpressStateMachine(stateMachineName string,
	loggingConfiguration *gofstep.StateMachine_LoggingConfiguration,
	startState TransitionState) *StateMachine

NewExpressStateMachine returns a new Express StateMachine instance. See https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachine.html for more information.

func NewStateMachine

func NewStateMachine(stateMachineName string, startState MachineState) *StateMachine

NewStateMachine returns a new StateMachine instance

func (*StateMachine) Comment

func (sm *StateMachine) Comment(comment string) *StateMachine

Comment sets the StateMachine comment

func (*StateMachine) MarshalJSON

func (sm *StateMachine) MarshalJSON() ([]byte, error)

MarshalJSON for custom marshalling

func (*StateMachine) StateMachineDecorator

func (sm *StateMachine) StateMachineDecorator() sparta.ServiceDecoratorHookFunc

StateMachineDecorator is a decorator that returns a default CloudFormationResource named decorator

func (*StateMachine) StateMachineNamedDecorator

func (sm *StateMachine) StateMachineNamedDecorator(stepFunctionResourceName string) sparta.ServiceDecoratorHookFunc

StateMachineNamedDecorator is the hook exposed by the StateMachine to insert the AWS Step function into the CloudFormation template

func (*StateMachine) WithRoleArn

func (sm *StateMachine) WithRoleArn(roleArn string) *StateMachine

WithRoleArn sets the state machine roleArn

type StringEquals

type StringEquals struct {
	Comparison
	Variable string
	Value    string
}

StringEquals comparison

func (*StringEquals) MarshalJSON

func (cmp *StringEquals) MarshalJSON() ([]byte, error)

MarshalJSON for custom marshalling

type StringEqualsPath

type StringEqualsPath struct {
	Comparison
	Variable string
	Value    string
}

StringEqualsPath comparison

func (*StringEqualsPath) MarshalJSON

func (cmp *StringEqualsPath) MarshalJSON() ([]byte, error)

MarshalJSON for custom marshalling

type StringGreaterThan

type StringGreaterThan struct {
	Comparison
	Variable string
	Value    string
}

StringGreaterThan comparison

func (*StringGreaterThan) MarshalJSON

func (cmp *StringGreaterThan) MarshalJSON() ([]byte, error)

MarshalJSON for custom marshalling

type StringGreaterThanEquals

type StringGreaterThanEquals struct {
	Comparison
	Variable string
	Value    string
}

StringGreaterThanEquals comparison

func (*StringGreaterThanEquals) MarshalJSON

func (cmp *StringGreaterThanEquals) MarshalJSON() ([]byte, error)

MarshalJSON for custom marshalling

type StringGreaterThanEqualsPath

type StringGreaterThanEqualsPath struct {
	Comparison
	Variable string
	Value    string
}

StringGreaterThanEqualsPath comparison

func (*StringGreaterThanEqualsPath) MarshalJSON

func (cmp *StringGreaterThanEqualsPath) MarshalJSON() ([]byte, error)

MarshalJSON for custom marshalling

type StringGreaterThanPath

type StringGreaterThanPath struct {
	Comparison
	Variable string
	Value    string
}

StringGreaterThanPath comparison

func (*StringGreaterThanPath) MarshalJSON

func (cmp *StringGreaterThanPath) MarshalJSON() ([]byte, error)

MarshalJSON for custom marshalling

type StringLessThan

type StringLessThan struct {
	Comparison
	Variable string
	Value    string
}

StringLessThan comparison

func (*StringLessThan) MarshalJSON

func (cmp *StringLessThan) MarshalJSON() ([]byte, error)

MarshalJSON for custom marshalling

type StringLessThanEquals

type StringLessThanEquals struct {
	Comparison
	Variable string
	Value    string
}

StringLessThanEquals comparison

func (*StringLessThanEquals) MarshalJSON

func (cmp *StringLessThanEquals) MarshalJSON() ([]byte, error)

MarshalJSON for custom marshalling

type StringLessThanEqualsPath

type StringLessThanEqualsPath struct {
	Comparison
	Variable string
	Value    string
}

StringLessThanEqualsPath comparison

func (*StringLessThanEqualsPath) MarshalJSON

func (cmp *StringLessThanEqualsPath) MarshalJSON() ([]byte, error)

MarshalJSON for custom marshalling

type StringLessThanPath

type StringLessThanPath struct {
	Comparison
	Variable string
	Value    string
}

StringLessThanPath comparison

func (*StringLessThanPath) MarshalJSON

func (cmp *StringLessThanPath) MarshalJSON() ([]byte, error)

MarshalJSON for custom marshalling

type StringMatches

type StringMatches struct {
	Comparison
	Variable string
	Value    string
}

StringMatches comparison

func (*StringMatches) MarshalJSON

func (cmp *StringMatches) MarshalJSON() ([]byte, error)

MarshalJSON for custom marshalling

type SuccessState

type SuccessState struct {
	// contains filtered or unexported fields
}

SuccessState represents the end of the state machine

func NewSuccessState

func NewSuccessState(name string) *SuccessState

NewSuccessState returns a "SuccessState" with the supplied name

func (*SuccessState) AdjacentStates

func (ss *SuccessState) AdjacentStates() []MachineState

AdjacentStates returns nodes reachable from this node

func (*SuccessState) MarshalJSON

func (ss *SuccessState) MarshalJSON() ([]byte, error)

MarshalJSON for custom marshalling

func (*SuccessState) Name

func (ss *SuccessState) Name() string

Name returns the WaitDelay name

func (*SuccessState) Next

func (ss *SuccessState) Next(nextState MachineState) MachineState

Next sets the step after the wait delay

func (*SuccessState) WithComment

func (ss *SuccessState) WithComment(comment string) TransitionState

WithComment returns the WaitDelay comment

func (*SuccessState) WithInputPath

func (ss *SuccessState) WithInputPath(inputPath string) TransitionState

WithInputPath returns the TaskState input data selector

func (*SuccessState) WithOutputPath

func (ss *SuccessState) WithOutputPath(outputPath string) TransitionState

WithOutputPath returns the TaskState output data selector

type TaskCatch

type TaskCatch struct {
	// contains filtered or unexported fields
}

TaskCatch is an action to handle a failing operation

func NewTaskCatch

func NewTaskCatch(nextState TransitionState, errors ...StateError) *TaskCatch

NewTaskCatch returns a new TaskCatch instance

func (*TaskCatch) MarshalJSON

func (tc *TaskCatch) MarshalJSON() ([]byte, error)

MarshalJSON to prevent inadvertent composition

type TaskRetry

type TaskRetry struct {
	ErrorEquals []StateError `json:",omitempty"`
	//lint:ignore ST1011 we want to give a cue to the client of the units
	IntervalSeconds time.Duration `json:",omitempty"`
	MaxAttempts     int           `json:",omitempty"`
	BackoffRate     float32       `json:",omitempty"`
}

TaskRetry is an action to perform in response to a Task failure

func NewTaskRetry

func NewTaskRetry() *TaskRetry

NewTaskRetry returns a new TaskRetry instance

func (*TaskRetry) WithBackoffRate

func (tr *TaskRetry) WithBackoffRate(backoffRate float32) *TaskRetry

WithBackoffRate is the fluent builder

func (*TaskRetry) WithErrors

func (tr *TaskRetry) WithErrors(errors ...StateError) *TaskRetry

WithErrors is the fluent builder

func (*TaskRetry) WithInterval

func (tr *TaskRetry) WithInterval(interval time.Duration) *TaskRetry

WithInterval is the fluent builder

func (*TaskRetry) WithMaxAttempts

func (tr *TaskRetry) WithMaxAttempts(maxAttempts int) *TaskRetry

WithMaxAttempts is the fluent builder

type TaskState

type TaskState struct {
	BaseTask
	// contains filtered or unexported fields
}

TaskState represents bindings for https://states-language.net/#task-state

func NewTaskState

func NewTaskState(stateName string,
	resourceURI string,
	parameters map[string]interface{}) *TaskState

NewTaskState returns an initialized TaskState. A Task State MUST include a "Resource" field, whose value MUST be a URI that uniquely identifies the specific task to execute. The States language does not constrain the URI scheme nor any other part of the URI.

func (*TaskState) MarshalJSON

func (ts *TaskState) MarshalJSON() ([]byte, error)

MarshalJSON for custom marshalling, since this will be stringified and we need it to turn into a stringified

type TimestampEquals

type TimestampEquals struct {
	Comparison
	Variable string
	Value    time.Time
}

TimestampEquals comparison

func (*TimestampEquals) MarshalJSON

func (cmp *TimestampEquals) MarshalJSON() ([]byte, error)

MarshalJSON for custom marshalling

type TimestampEqualsPath

type TimestampEqualsPath struct {
	Comparison
	Variable string
	Value    string
}

TimestampEqualsPath comparison

func (*TimestampEqualsPath) MarshalJSON

func (cmp *TimestampEqualsPath) MarshalJSON() ([]byte, error)

MarshalJSON for custom marshalling

type TimestampGreaterThan

type TimestampGreaterThan struct {
	Comparison
	Variable string
	Value    time.Time
}

TimestampGreaterThan comparison

func (*TimestampGreaterThan) MarshalJSON

func (cmp *TimestampGreaterThan) MarshalJSON() ([]byte, error)

MarshalJSON for custom marshalling

type TimestampGreaterThanEquals

type TimestampGreaterThanEquals struct {
	Comparison
	Variable string
	Value    time.Time
}

TimestampGreaterThanEquals comparison

func (*TimestampGreaterThanEquals) MarshalJSON

func (cmp *TimestampGreaterThanEquals) MarshalJSON() ([]byte, error)

MarshalJSON for custom marshalling

type TimestampGreaterThanEqualsPath

type TimestampGreaterThanEqualsPath struct {
	Comparison
	Variable string
	Value    string
}

TimestampGreaterThanEqualsPath comparison

func (*TimestampGreaterThanEqualsPath) MarshalJSON

func (cmp *TimestampGreaterThanEqualsPath) MarshalJSON() ([]byte, error)

MarshalJSON for custom marshalling

type TimestampGreaterThanPath

type TimestampGreaterThanPath struct {
	Comparison
	Variable string
	Value    string
}

TimestampGreaterThanPath comparison

func (*TimestampGreaterThanPath) MarshalJSON

func (cmp *TimestampGreaterThanPath) MarshalJSON() ([]byte, error)

MarshalJSON for custom marshalling

type TimestampLessThan

type TimestampLessThan struct {
	Comparison
	Variable string
	Value    time.Time
}

TimestampLessThan comparison

func (*TimestampLessThan) MarshalJSON

func (cmp *TimestampLessThan) MarshalJSON() ([]byte, error)

MarshalJSON for custom marshalling

type TimestampLessThanEquals

type TimestampLessThanEquals struct {
	Comparison
	Variable string
	Value    time.Time
}

TimestampLessThanEquals comparison

func (*TimestampLessThanEquals) MarshalJSON

func (cmp *TimestampLessThanEquals) MarshalJSON() ([]byte, error)

MarshalJSON for custom marshalling

type TimestampLessThanEqualsPath

type TimestampLessThanEqualsPath struct {
	Comparison
	Variable string
	Value    string
}

TimestampLessThanEqualsPath comparison

func (*TimestampLessThanEqualsPath) MarshalJSON

func (cmp *TimestampLessThanEqualsPath) MarshalJSON() ([]byte, error)

MarshalJSON for custom marshalling

type TimestampLessThanPath

type TimestampLessThanPath struct {
	Comparison
	Variable string
	Value    string
}

TimestampLessThanPath comparison

func (*TimestampLessThanPath) MarshalJSON

func (cmp *TimestampLessThanPath) MarshalJSON() ([]byte, error)

MarshalJSON for custom marshalling

type TransitionState

type TransitionState interface {
	MachineState
	Next(state MachineState) MachineState
	// AdjacentStates returns all the MachineStates that are reachable from
	// the current state
	AdjacentStates() []MachineState
	WithComment(string) TransitionState
	WithInputPath(string) TransitionState
	WithOutputPath(string) TransitionState
}

TransitionState is the generic state according to https://states-language.net/spec.html#state-type-table

type WaitDelay

type WaitDelay struct {
	// contains filtered or unexported fields
}

WaitDelay is a delay with an interval

func NewWaitDelayState

func NewWaitDelayState(stateName string, delay time.Duration) *WaitDelay

NewWaitDelayState returns a new WaitDelay pointer instance

func (*WaitDelay) AdjacentStates

func (wd *WaitDelay) AdjacentStates() []MachineState

AdjacentStates returns nodes reachable from this node

func (*WaitDelay) MarshalJSON

func (wd *WaitDelay) MarshalJSON() ([]byte, error)

MarshalJSON for custom marshalling

func (*WaitDelay) Name

func (wd *WaitDelay) Name() string

Name returns the WaitDelay name

func (*WaitDelay) Next

func (wd *WaitDelay) Next(nextState MachineState) MachineState

Next sets the step after the wait delay

func (*WaitDelay) WithComment

func (wd *WaitDelay) WithComment(comment string) TransitionState

WithComment returns the WaitDelay comment

func (*WaitDelay) WithInputPath

func (wd *WaitDelay) WithInputPath(inputPath string) TransitionState

WithInputPath returns the TaskState input data selector

func (*WaitDelay) WithOutputPath

func (wd *WaitDelay) WithOutputPath(outputPath string) TransitionState

WithOutputPath returns the TaskState output data selector

type WaitDynamicUntil

type WaitDynamicUntil struct {
	TimestampPath string
	SecondsPath   string
	// contains filtered or unexported fields
}

WaitDynamicUntil is a delay based on a previous response

func NewDynamicWaitDurationState

func NewDynamicWaitDurationState(stateName string, secondsPath string) *WaitDynamicUntil

NewDynamicWaitDurationState returns a new WaitDynamicUntil pointer instance

func NewWaitDynamicUntilState

func NewWaitDynamicUntilState(stateName string, timestampPath string) *WaitDynamicUntil

NewWaitDynamicUntilState returns a new WaitDynamicUntil pointer instance

func (*WaitDynamicUntil) AdjacentStates

func (wdu *WaitDynamicUntil) AdjacentStates() []MachineState

AdjacentStates returns nodes reachable from this node

func (*WaitDynamicUntil) MarshalJSON

func (wdu *WaitDynamicUntil) MarshalJSON() ([]byte, error)

MarshalJSON for custom marshalling

func (*WaitDynamicUntil) Name

func (wdu *WaitDynamicUntil) Name() string

Name returns the WaitDelay name

func (*WaitDynamicUntil) Next

func (wdu *WaitDynamicUntil) Next(nextState MachineState) MachineState

Next sets the step after the wait delay

func (*WaitDynamicUntil) WithComment

func (wdu *WaitDynamicUntil) WithComment(comment string) TransitionState

WithComment returns the WaitDelay comment

func (*WaitDynamicUntil) WithInputPath

func (wdu *WaitDynamicUntil) WithInputPath(inputPath string) TransitionState

WithInputPath returns the TaskState input data selector

func (*WaitDynamicUntil) WithOutputPath

func (wdu *WaitDynamicUntil) WithOutputPath(outputPath string) TransitionState

WithOutputPath returns the TaskState output data selector

type WaitUntil

type WaitUntil struct {
	Timestamp time.Time
	// contains filtered or unexported fields
}

WaitUntil is a delay with an absolute time gate

func NewWaitUntilState

func NewWaitUntilState(stateName string, waitUntil time.Time) *WaitUntil

NewWaitUntilState returns a new WaitDelay pointer instance

func (*WaitUntil) AdjacentStates

func (wu *WaitUntil) AdjacentStates() []MachineState

AdjacentStates returns nodes reachable from this node

func (*WaitUntil) MarshalJSON

func (wu *WaitUntil) MarshalJSON() ([]byte, error)

MarshalJSON for custom marshalling

func (*WaitUntil) Name

func (wu *WaitUntil) Name() string

Name returns the WaitDelay name

func (*WaitUntil) Next

func (wu *WaitUntil) Next(nextState MachineState) MachineState

Next sets the step after the wait delay

func (*WaitUntil) WithComment

func (wu *WaitUntil) WithComment(comment string) TransitionState

WithComment returns the WaitDelay comment

func (*WaitUntil) WithInputPath

func (wu *WaitUntil) WithInputPath(inputPath string) TransitionState

WithInputPath returns the TaskState input data selector

func (*WaitUntil) WithOutputPath

func (wu *WaitUntil) WithOutputPath(outputPath string) TransitionState

WithOutputPath returns the TaskState output data selector

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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