aws-cdk-lib.aws_events_targets.SfnStateMachine

class SfnStateMachine

LanguageType name
.NETAmazon.CDK.AWS.Events.Targets.SfnStateMachine
Gogithub.com/aws/aws-cdk-go/awscdk/v2/awseventstargets#SfnStateMachine
Javasoftware.amazon.awscdk.services.events.targets.SfnStateMachine
Pythonaws_cdk.aws_events_targets.SfnStateMachine
TypeScript (source)aws-cdk-lib » aws_events_targets » SfnStateMachine

Implements IRuleTarget

Use a StepFunctions state machine as a target for Amazon EventBridge rules.

Example

import * as iam from 'aws-cdk-lib/aws-iam';
import * as sfn from 'aws-cdk-lib/aws-stepfunctions';

const rule = new events.Rule(this, 'Rule', {
  schedule: events.Schedule.rate(Duration.minutes(1)),
});

const dlq = new sqs.Queue(this, 'DeadLetterQueue');

const role = new iam.Role(this, 'Role', {
  assumedBy: new iam.ServicePrincipal('events.amazonaws.com'),
});
const stateMachine = new sfn.StateMachine(this, 'SM', {
  definition: new sfn.Wait(this, 'Hello', { time: sfn.WaitTime.duration(Duration.seconds(10)) })
});

rule.addTarget(new targets.SfnStateMachine(stateMachine, {
  input: events.RuleTargetInput.fromObject({ SomeParam: 'SomeValue' }),
  deadLetterQueue: dlq,
  role: role
}));

Initializer

new SfnStateMachine(machine: IStateMachine, props?: SfnStateMachineProps)

Parameters

  • machine IStateMachine
  • props SfnStateMachineProps

Properties

NameTypeDescription
machineIStateMachine

machine

Type: IStateMachine

Methods

NameDescription
bind(_rule, _id?)Returns a properties that are used in an Rule to trigger this State Machine.

bind(_rule, _id?)

public bind(_rule: IRule, _id?: string): RuleTargetConfig

Parameters

  • _rule IRule
  • _id string

Returns

  • RuleTargetConfig

Returns a properties that are used in an Rule to trigger this State Machine.

See also: https://docs.aws.amazon.com/eventbridge/latest/userguide/resource-based-policies-eventbridge.html#sns-permissions