Tag: cdk

Next-Level Integration Testing with ServerlessSpy

Integration testing for serverless Event-Driven Architecture is as necessary as it is time-consuming. Boilerplate code to write, long waiting for tests completion, tedious debugging. But no more.
March 26, 2024
Read more

Building a CDK Construct Library: thoughts and tips

I recently created a CDK library provisioning a CI/CD pipeline for serverless apps on AWS. Having finished the "regular" JS library, it took me a day to convert it to a "proper" CDK Construct library. Not long, and I learned a lot. Here are my thoughts and tips.
June 14, 2023
Read more

Understanding Logical IDs in CDK and CloudFormation

CDK generates Logical IDs used by the CloudFormation to track and identify resources. In this post, I'll explain what Logical IDs are, how they're generated, and why they're important. Understanding this will help you avoid unexpected resource deletions and baffling "resource already exists" errors during deployment.
January 17, 2023
Read more

Running Serverless ML on AWS Lambda

Yes, you can run Machine Learning models on serverless, directly with AWS Lambda. I know because I built and productionized such solutions. It's not complicated, but there are a few things to be aware of. I explain them in this in-depth tutorial, where we build a serverless ML pipeline.
November 10, 2022
Read more

Least deployment privilege with CDK Bootstrap

Security is not convenient. That's probably why the CDK, by default, uses AdministratorAccess Policy to deploy resources. But we can easily change it and increase the security of our AWS account, following the least privilege principle with a minimal additional burden.
August 30, 2022
Read more

The AWS CDK, Or Why I Stopped Being a CDK Skeptic

Until recently, I was skeptical about the AWS CDK. I believe in Infrastructure as Code (IaC), but with the "code" being YAML. But after using CDK in real projects, the amount of heavy lifting it does and the vast reduction of a boilerplate code changed my view.
June 29, 2022
Read more