Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: Add aws-ruby-step-functions-express example #639

Merged

Conversation

Pigius
Copy link
Contributor

@Pigius Pigius commented Aug 13, 2021

Big picture behind

Currently, there aren't many examples of using the serverless approach with Ruby for AWS. Ruby is a great and mature language with a great community and lots of gems.

General message

There are not many examples of Step Functions, and especially with the Express Workflow type.

Luckily we also now have Workflow Studio for AWS Step Functions, so it's easier to design state machines.

This is an example of using AWS Step Functions Express Workflow Type. It uses AWS Lambda, DynamoDB, Amazon SES, API Gateway and flows from Step Functions. It's a simple workflow, it adds the user to the database (DynamoDB) and if the save is successful, we send an email notification (AWS Lambda + Amazon SES). We also have error handling.

Diagrams could be found here:
express-workflow-draw
stepfunctions_express_graph
express-diagram-visual

Extra points:

  • Used the Ruby.27 runtime, as for the Ruby2.5 will be End of Support at the end of August.

Copy link
Contributor

@pgrzesik pgrzesik left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you @Pigius, great job as always 🙇 I only have two nitpicks and we should be good to go 🙌

aws-ruby-step-functions-express/README.md Outdated Show resolved Hide resolved
aws-ruby-step-functions-express/README.md Show resolved Hide resolved
@Pigius Pigius requested a review from pgrzesik August 23, 2021 13:24
Copy link
Contributor

@pgrzesik pgrzesik left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Great job @Pigius 👏

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants