A hands-on demonstration project showcasing Infrastructure as Code (IaC) with Massdriver. This repository contains a complete serverless REST API built on AWS using API Gateway, Lambda, and DynamoDB.
This demo implements a three-tier serverless application:
- API Gateway (
bundles/apigateway/
) - REST API with optional custom DNS - Lambda Function (
bundles/lambda/
) - Node.js application with configurable routes - DynamoDB Table (
bundles/dynamodb/
) - NoSQL database with flexible schema
├── bundles/ # Massdriver infrastructure bundles
│ ├── apigateway/ # API Gateway configuration
│ ├── dynamodb/ # DynamoDB table setup
│ └── lambda/ # Lambda function (Node.js)
├── artifact-definitions/ # Custom artifact schemas
├── components/ # Reusable schema components
└── Makefile # Publishing automation
-
Clone the repository
git clone <repo-url> cd collaborative-demo
-
Open in your favorite editor
code . # VS Code # or your preferred editor
-
Ready to collaborate! We'll explore and modify the infrastructure code together during our session.
During our session, we'll:
- Explore the bundle configurations
- Modify infrastructure parameters
- Deploy components step-by-step
- Connect the services together
- Test the complete application
bundles/*/massdriver.yaml
- Bundle configurations and schemasbundles/lambda/src/
- Lambda function source codebundles/*/src/*.tf
- Terraform infrastructure definitions
Each collaborative exercise can be found by searching for MODULE_
comments throughout the code. These mark sections where solutions are commented out - we'll uncomment and configure them together during the demo!
# Search for all demo modules
grep -r "MODULE_" bundles/
Ready to build some infrastructure? Let's dive in! 🎯