Step Functions Local update - http:invoke

0

I patently waited for the StepFunctions local to be updated to use the new(ish) http:invoke feature, and apparently it's been updated 1 month ago. I tested one of my state machine locally with version 1.13.2 (31 October) and I got (as expected) an error:

Sfn::ExecutionError:
       An error occurred while scheduling the state 'Get Schools From TinyBird'. The provided ARN 'arn:aws:states:eu-west-1:123456789012:http:invoke' is invalid. Please refer to https://docs.aws.amazon.com/step-functions/latest/dg/connect-supported-services.html for valid service ARNs.

Then I tried the new version 1.13.3 (20 February) and, unfortunately I've got the same error.

I appreciate the fact StepFunctions local can be always up-to-date, but the feature has been around for roughly 3 months now.

已提問 2 個月前檢視次數 127 次
2 個答案
0

Use mocked service integrations instead of the actual http:invoke endpoint when testing locally. Mocked integrations allow simulating responses without requiring the real service.

Moreover:

  • Check the AWS Step Functions documentation and release notes for the local docker image to see if any updates have been made to support http:invoke. New features sometimes take time to be incorporated into the local testing tools.
  • As a workaround, you may be able to test parts of the state machine flow locally even without full http:invoke support by mocking specific steps.
  • Consider opening an issue on the Step Functions local GitHub repo to request the feature if it's not yet available. Community feedback helps prioritize future updates.
  • For critical testing, use the actual Step Functions service in AWS instead of the local version to fully validate state machines with http:invoke integrations. The local docker image is useful but may lag behind the latest AWS features at times.
profile picture
專家
已回答 2 個月前
  • I'm mocking the service, but StepFunctionsLocal fails validating the step function definition.

0

By the way, thanks for your extensive response... I think this answer could be useful for others:

Check the AWS Step Functions documentation and release notes for the local docker image to see if any updates have been made to support http:invoke. New features sometimes take time to be incorporated into the local testing tools.

Do you know where this documentation is? I don't think there's a git repo and the dockerhub page doesn't have any release notes.

As a workaround, you may be able to test parts of the state machine flow locally even without full http:invoke support by mocking specific steps.

My strategy is to:

  • Update the ARN from http:invoke to apigateway:invoke
  • Remove the Authentication
  • Convert the QueryParameters

But it's far from ideal.

Consider opening an issue on the Step Functions local GitHub repo to request the feature if it's not yet available. Community feedback helps prioritize future updates.

Do you know where this repo is?

For critical testing, use the actual Step Functions service in AWS instead of the local version to fully validate state machines with http:invoke integrations. The local docker image is useful but may lag behind the latest AWS features at times.

StepFunctions local is only part of my testing strategy of course :)

已回答 2 個月前

您尚未登入。 登入 去張貼答案。

一個好的回答可以清楚地回答問題並提供建設性的意見回饋,同時有助於提問者的專業成長。

回答問題指南