Integrations
You can use the Start Step Functions Execution action with the following integrations:
Requirements
The Start Step Functions Execution action requires sufficient IAM permissions - an adequate IAM policy similar to the one provisioned by the Automation with AWS (Core) CloudFormation template might look as follows:
Refer to Creating IAM Roles for Use with AWS Step Functions for details on how to create more granular/secure policies.
Configuration
To configure an Start Step Functions Execution action:
Complete the following settings:
Parameters
Specify the action parameters according to the following skeleton in JSON format – refer to stepfunctions . start-execution for details:
You typically only specify the stateMachineArn
and input
parameters, because name must be unique for your AWS account and region and properly defaults to a GUID when absent.
You can inject contextual variables into the remote action payload, refer to Entity Variables for details.
Start Step Functions Execution skeleton
{ "stateMachineArn": "", "name": "", "input": "" }
Entity Variables
You can inject contextual workflow variables with workflow entities into the remote action payload template – currently available entities are:
Examples
-
Start Step Functions Execution — This parameters template demonstrates the Start Step Functions Execution action:
JSON escaping requirements
If a parameter within the JSON formatted parameters template is a JSON structure in itself (e.g. the Lambda function payload), it needs to be escaped before adding it as a value - this has two implications:
custom content needs to be escaped, which can be achieved by Composing action payloads with utility functions, specifically the $util.escapeJson() function
variables with conflicting content (e.g. multi line variables like JIRA's
$issue.fields.description
or Bamboo's$notification.textEmailContent
or JSON structures retrieved via JSONPath) need to be escaped twice, via$util.escapeJson($util.escapeJson(...))
- we are exploring options on how to make this easier in a future release
Start Step Functions Execution parameters example (escaped manually)
{ "StateMachineArn": "arn:aws:states:ap-southeast-2:123456789012:stateMachine:sample-AutomationWithAWSQuickstartStepFunctionsStateMachine-UHDE4Y9QTDIN", "Input": "{ \"Event\":\"$event.simpleName\", \"Timestamp\": \"$event.timestamp\", \"TraceID\": \"$event.traceId\"}" }
Start Step Functions Execution parameters example (escaped with utility function)
{ "StateMachineArn": "arn:aws:states:ap-southeast-2:123456789012:stateMachine:sample-AutomationWithAWSQuickstartStepFunctionsStateMachine-UHDE4Y9QTDIN", "Input": "$util.escapeJson('{ "Event": "$event.simpleName", "Timestamp": "$event.timestamp", "TraceID": "$event.traceId" }')" }
How-to Articles
Frequently Asked Questions (FAQ)
Atlassian account required