maestro
v2.1.1
Published
Maestro is a framework for quickly bootstrapping serverless orchestration workflows with AWS Step Functions
Downloads
385
Readme
Maestro is a framework that enables rapid iteration for serverless orchestration. The rise of serverless architectures and FaaS offerings such as AWS Lambda has revolutionized how companies are developing modern apps. The need for an orchestration layer over these architectures has brought about services such as AWS Step Functions. However, deploying apps that use Step Functions can be tedious and error-prone. Maestro prioritizes speed and developer productivity by automating this process so that the developer’s focus stays on developing their application's business logic.
Usage
To use, you must have the AWS CLI installed and set up.
- Install the npm package globally (
sudo npm -g install maestro
) - Configure your AWS account number and region with (
maestro config
) - Run
maestro get-templates
to get the default project templates provided by Maestro - Create a new project with
maestro new
- Hack away on your
definition.asl.json
state machine definitino file and the lambdas in thelambdas/
directory - Run
maestro deploy
in the top level directory of your Maestro project to deploy it to AWS - To tear down state machine and associated resources, run
maestro teardown
- This prompts you for confirmation. If you prefer to run it without a confirmation, provide a
-f
or--force
flag - This doesn't automatically tear down the roles that were created upon deployment. To do that, provide a
--roles
flag with a comma-separated-list of role names to tear down (for example,--roles=roleName1,roleName2
OR--roles roleName1,roleName2
)
- This prompts you for confirmation. If you prefer to run it without a confirmation, provide a
- Read the man pages and get up to speed! (
man maestro
) i. Alternatively, take advantage of our helpfulmaestro help
command! (e.g.maestro help deploy
ormaestro deploy --help
)
Dependencies
- Node.js 12.x or greater
- npm packages (installed during
npm install
):minimist
aws-sdk
zip
command line utility- AWS CLI
git
version control system