PPK
PPK

Reputation: 57

Execute AWS Datasync task using step function

We have a requirement to create a state machine which includes to datasync tasks followed by each other. These datasync tasks are already created and now I want to execute it using step functions one after another. What is the resource to execute a datasync task. For eg: For executing a Glue Job we give Resource:arn:aws:states:::glue:startJobRun.sync

What Resource string is used for executing a datasync task?

Upvotes: 0

Views: 1217

Answers (1)

Justin Callison
Justin Callison

Reputation: 2209

Step Functions integrates with AWS DataSync using AWS SDK Service Integrations. The Resource string will be of the form arn:aws:states:::aws-sdk:datasync:<api-action>

The easiest way to find this sort of information is with Workflow Studio. As you can see in the image below, it allows you to search through available services and api actions to find what you need, then just drag it into your workflow.

enter image description here

Step Functions does not have an Optimized Integration for DataSync and therefore only supports the Request Response integration pattern. As such, I suspect you will want to use the Job Poller pattern (Workflow Studio helps you here as well) to start the task execution then monitor for completion.

enter image description here

For easier re-use, you might want to implement this in a state machine that you can then reuse by calling it from other state machines when needed. This blog post goes into detail on how to do a similar thing with Glue Crawler, but much of it will be applicable.

Upvotes: 2

Related Questions