CodePipeline: Python AWS Lambda Functions Without Timeouts

Hello! Today we're going to cover how to add Python AWS lambda functions to CodePipeline, and specifically how to do that without getting stuck in timeout loops you can't cancel. Copy/pastable code first, details below. Replace the two highlighted lines with the code you actually need to run in the pipeline. The commented raise is … Continue reading CodePipeline: Python AWS Lambda Functions Without Timeouts

Better boto3 Error Handling: Stopping Silent Failures

Good morning! Today's post covers a pattern I use to increase my confidence that my infrastructure code is working. It turns silent errors into loud ones. I've handled plenty of code that runs without errors but still ends up doing the wrong thing, so I'm never really sure if it's safe to go to sleep … Continue reading Better boto3 Error Handling: Stopping Silent Failures

Lamba: Filter boto3’s Logs into CloudWatch

Good morning! If you're writing a regular script (i.e. not a lambda function), check out this article instead. For those custom cases that don't fit into Terraform or CloudFormation, a little bit of Python and some boto3 in a lambda function can save you. Lambda captures the output of both print() and logging.Logger calls into CloudWatch … Continue reading Lamba: Filter boto3’s Logs into CloudWatch

The Better Alexa Quick Start

You've seen the Life Coach. That was my second Alexa project. The one I used to learn the platform. I began with Amazon's quick start tutorial (update August 2019: broken link to quick start removed, the AWS tutorials have evolved since this article was written), but I didn't like the alexa-skills-kit-color-expert-python example code. It feels like … Continue reading The Better Alexa Quick Start