Nuts and Bolts

Everyone has opinions and thoughts. Here are some of ours.

3 SSH tips: Ssh-agent, Tunnel, and Escaping from the Dead

There are a ton of ssh tips out there, and I thought that I surface 3 of them. Here are 3 ssh tips that I’ve learned over the years. Hope you find them useful 🎉

Lono Xgraph - Visualizing the CloudFormation Template Dependency Graph

It can be difficult to understand the CloudFormation resources and their dependencies when working with a complicated CloudFormation template. We’ll run through some commands to try to help understand their dependencies.

Lono Summary - Summarize CloudFormation Template

In the previous posts, we went over some jq tips with CloudFormation. We used jq to quickly summarize CloudFormation template parameters and resources. lono summary automates that process and makes the command short and sweet.

Summarize CloudFormation Required Parameters with jq

Shortly after the last video CloudFormation Templates and jq Tips, I wanted to know what the required parameters in a CloudFormation template were. This is also an easy task with jq. I’ll show you how to use jq to quickly summarize the required and optional parameters in a CloudFormation template in this post. It’s a one-liner 😁

JSON to YAML One Liner

I don’t remember exactly where I got these one-liners from anymore. It’s been in my expander for a while. Here are useful oneliners to convert JSON to YAML and vice versa.

Summarize CloudFormation Resources with jq Tip

I’ll go over a useful way to summarize CloudFormation templates resources with jq. This is useful when you are looking at a CloudFormation template and trying to understand it. We’ll download an example CloudFormation template and use run through some useful jq commands summarize the resources defined in a CloudFormation template. Note, I’ll only show the output that is useful for understanding.

Introduction to the lono import Command

Embarrassingly, I’ve been converting raw CloudFormation templates to lono CloudFormation templates manually. Probably one of the reasons why it’s been neglected is because this process is so simple, but it is ripe for automation. This should have been done this a long ago.

Build Thor CLI Project in Under a Second

Update 9/5/2018: The video is old and demos the older version of the tool called thor_template. The new tool is called cli-template. I’ve updated the blog post but not the video.

These two tools seem pretty cool too:

Thanks @eashman for showing me the tools.


In this post, we’ll build a CLI project that is based on Thor in under a second.

The cli-template tool builds a fully functional CLI command based on Thor. The commands immediately work and there are even specs.

AWS Console Menu Shortcuts Tip

Learn about the shortcuts menu tray at the top of the AWS Console. Jam in as many shortcuts as you can 🎉

How To Run Migrations on AWS ECS and Other One off Tasks

Once a developer came up to me and told me that he was ready to deploy, but the deploy required migrations be run. He asked me an innocent question, how should he run migrations. Embarrassingly, because we were still evolving our tooling for the new infrastructure, we did not have a process for this simple task. We came up with an ad-hoc process that was honestly pretty terrible. It went like this:

How AWS VPC Works Intro

I’ll provide a basic introduction to the mysterious VPC world. I’ll explain terms using various diagrams. We’ll also build a simple VPC network out manually to help understand VPCs.

Gentle Introduction to How AWS ECS Works with Example Tutorial

ECS is the AWS Docker container service that handles the orchestration and provisioning of Docker containers. This is a beginner level introduction to AWS ECS. I’ve seen some nightmare posts and some glowing reviews about the ECS service, so I knew it was going to interesting to get my hands dirty and see what ECS was all about.

AWS ECS Terms Introduction Tutorial

Most of the time when someone introduces ECS to you it goes something like this. Here are all the terms:

Lono CloudFormation Framework Version 3 Release - Layering, Shared Variables, Nested Stacks, Format Detection, Custom Helpers, Source Name Convention, Settings Support

I’m excited to say that a ton of great features has been added to lono with this major version bump. At this point, lono has grown to become a framework for managing CloudFormation templates. Let jump right into it and cover the major improvements.

BoltOps Tooling and Software Design Philosophy

Software is often more of an art form than it is a science. This is one of the reasons software tends to vary substantially between tools and developers. By following guidelines and design patterns though it can help keep the code consistent and clean. This allows the code to be understandable between engineers and allow them to move between tools efficiently. In this post, I’ll talk about what some of the best practices and software design patterns followed in the BoltOps tools.

The 10X, 1X, 0X and -X Engineer

The 10X Engineer

“He’s a 10X engineer.” I remember hearing this expression from recruiters and product managers a few years ago. It’s a funny term but quickly conveys the point. A 10X engineer is someone who can get 10X more done than the average engineer.

Let’s think through this logically. How many hours are there in a normal working day? 8 hours. So does a 10X engineer work 80 hours a day? No, of course not. That’s silly and impossible to do unless you have a tardis. So it’s not about how much you work but how you focus your efforts. A 10X engineer is smarter about how about he choses to spend his time and is better able to focus on higher leveraged activities. He or she focuses on things that make the most difference. This is nicely explained in Edmond Lau’s The Effective Engineer book, which I recommend.

How to Customize AWS Elastic Beanstalk Environments

A common misconception is that Elastic Beanstalk is difficult to work with because it is not customizable. I fell into this trap myself when I first took a look at AWS Elastic Beanstalk. After working with AWS Elastic Beanstalk directly and looking at it more closely though, there are plenty of ways to customize Elastic Beanstalk. I’ll cover the main ways to customize AWS Elastic Beanstalk environments in this post.

Under the Hood of AWS Elastic Beanstalk Part 2

This a continuation of the last post: Under the Hood of Elastic Beanstalk Part 1

We’ll go over the EB nginx setup for the docker container in this post.

Under the Hood of AWS Elastic Beanstalk Part 1

Elastic Beanstalk, EB, is a bit of a magic box. I’d thought it would be good to poke around a little bit under the hood, see how things actually work and learn from it. Understanding just enough of how EB works is extremely helpful for debugging. For this example I’m using a “64bit Amazon Linux 2017.03 v2.7.0 running Docker 17.03.1-ce” EB solution stack.

Jack and the Elastic Beanstalk - Easy Way to Manage AWS Elastic Beanstalk Environments

As with most AWS services, Elastic Beanstalk is great and simply require some tooling on top of the service to speed up the flow. This post covers the jack tool that be use to quickly create and manage Elastic Beanstalk environments.

Speeding Up AWS Elastic Beanstalk's eb deploy

As I’ve covered in Jack and the Elastic Beanstalk, Elastic Beanstalk is a great PaaS offering from AWS that allows developers to deploy and run their applications on EC2 instances. I been tinkering with a few different ways to speed up the eb deploy command from my local machine and was able to speed it up somewhat. Though honestly I was hoping for better results. I will detailed the results to show what I learned.

Note, the project and all it’s files are available on GitHub at tongueroo/hi under the docker-cache branch.

Ufo — Easily Build Docker Images and Deploy Containers to AWS ECS

Amazon EC2 Container Service, ECS, is an AWS service that provisions and manages Docker containers on a cluster of EC2 instances. As with most of AWS services, it is great and simply requires a little tooling wrapped around it to create a smooth flow. Ufo is a simple tool that makes building and shipping Docker containers to AWS ECS super easy.

AutoScaling CloudFormation Template with Lono

In the last CloudFormation post, Generating CloudFormation Templates with Lono, the stack was intentionally designed simple to allow focus on learning and understanding CloudFormation basics. The stack was not that useful in real life. Today, I’ll walk through a CloudFormation template that is practical and useful for real life use cases: an AutoScaling App Tier.

Lono Improvements v2.1.0

Recently, I’ve made some major improvements and updates to the lono tool. I thought it would be nice to provide a post detailing the changes for everyone.

Continuously Generate CloudFormation Templates with Lono and Guard

When using lono if you sometimes forgot to regenerate the templates after making changes you can use lono with guard to never have to remember again.

subscribe to Blog via RSS