nick.pearson.dev/

Verifying an SSL certificate with Ruby

Last week I needed to verify an SSL certificate’s trust with Ruby and wasn’t able to find a complete answer anywhere. After much poking around, I came up with the following code:


Validating Elastic Beanstalk worker tier cron schedules

If you’ve worked with Elastic Beanstalk worker tiers, you may be familiar with the cron.yaml file, which sqsd uses to send jobs to your app. I recently deployed a new version of a Rails app to our worker tier environment, and the deploy failed, and hard.


GitHub Action for Elastic Beanstalk package

When my apps were still on the now-deprecated platform version of Elastic Beanstalk (pre-Amazon Linux 2), my deployment process was simple. I’d create a release on GitHub, download the “Source code (zip)” file GitHub automatically creates, and upload it to the Elastic Beanstalk console.


ebenv update

In a previous post I wrote about a small script I call ebenv, which makes AWS Elastic Beanstalk environment properties available to shell commands as environment variables. See that post for the rationale behind this script.


Fixing a file streaming bug in a Rails app

A Rails app I work on accepts file uploads from public-facing websites. Uploaded files may contain sensitive information. We offer this so people don’t have to email their sensitive documents to our customers.


cfgpkg, or how to use age encryption with YAML

I have a case where I need to store a YAML file in an S3 bucket where it’s available to be copied to a server as part of an automated deployment process. The YAML file contains a few sensitive values, like API keys, so it’d be best to keep those values encrypted.


ebenv, or how to run commands with environment variables on Elastic Beanstalk

I recently deployed a Rails app onto the latest AWS Elastic Beanstalk platform version running Ruby. I had done this a couple years ago, but a newer platform version (running Amazon Linux 2) is out now, with some significant changes.