What are these?
- It’s like throwing Lambdas into CloudFormation
- They can do basically anything, return anything
What could I use custom resources for?
- Manage non-aws resources, e.g. third-party API
- Complex/custom logic, e.g. load data into an RDS instance
- Retrieve dynamic data, like variable AMIs
- Extend existing resources, e.g. logging, error-checking
- Manage AWS resources not yet supported in CF
How does CF use these?
- Retrieve package source from S3
- Deploy lambda func
- Run lambda, return data to CF
- CF continues with rest of deploy
What’s needed to use lambdas in CF?
- Custom resource (service token)
- Lambda execution role (permission)
- Lambda function
- Can be inline or S3 zipfile