Skip to content

Operating Ops

Automating Operations with Adam Burns

  • Adam Burns and DevOps
  • Hire Adam
  • Articles
  • Ask Me Anything

Author: Adam Burns

Separate Work and Personal Email

Good morning! Recent security incidents reminded me of an important rule that often doesn't make it on to security checklists: Separate work and personal email. In these incidents, workers used forwarding rules to send work email to personal accounts. Attackers used those rules to collect sensitive information. This is an example of exfiltration. Company security … Continue reading Separate Work and Personal Email →

Adam Burns Security January 14, 2021

Passing Parameters to Docker Builds

Hello! When I'm building Docker images, sometimes I need to pass data from the build agent (e.g. my CI pipeline) into the build process. Often, I also want to echo that data into the logs so I can use it for troubleshooting or validation later. Docker supports this! These examples were all tested in Docker … Continue reading Passing Parameters to Docker Builds →

Adam Burns Docker November 17, 2020November 17, 2020

PowerShell Scripts with Arguments

Hello! I write a lot of utility scripts. Little helpers to automate repetetive work. Like going through all those YAML files and updating that one config item, or reading through all those database entries and finding the two that are messed up because of that weird bug I just found. These scripts are usually small. … Continue reading PowerShell Scripts with Arguments →

Adam Burns PowerShell, Pure Programming November 15, 2020November 15, 2020

PowerShell on OS X: Git Hooks

Hello! PowerShell works great on Mac OS X. It's my default shell. I usually only do things the Posh way, but sometimes the underlying system bubbles back up. Like when I'm writing git hooks. In Posh, git hooks live in the same place and still have to be executable on your platform. That doesn't change. … Continue reading PowerShell on OS X: Git Hooks →

Adam Burns PowerShell November 14, 2020

A Checklist for Submitting Pull Requests

Hello! Reviewing code is hard, especially because reviewers tend to inherit some responsibility for problems the code causes later. That can lead to churn while they try to develop confidence that new submissions are ready to merge. I submit a lot of code for review, so I've been through a lot of that churn. Over … Continue reading A Checklist for Submitting Pull Requests →

Adam Burns Project Management, Pure Programming, Testing November 14, 2020

How to Grep in PowerShell

Hello! In oldschool Linux shells, you search files for a string with grep. You're probably used to commands like this (example results from an OSS repo): It outputs strings that concatenate the filename and the matching line. You can pipe those into awk or whatever other command to process them. Standard stuff. You can achieve … Continue reading How to Grep in PowerShell →

Adam Burns PowerShell November 13, 2020November 17, 2020

Tox: Testing Multiple Python Versions with Pyenv

Hello! I use Python's tox to orchestrate a lot of my tests. It lets you set a list of versions in a tox.ini file (in the same directory as your setup.py), like this: Then you can run the tox command, it'll create a venv for each version, and run your tests in each of those … Continue reading Tox: Testing Multiple Python Versions with Pyenv →

Adam Burns Python, Testing October 24, 2020

PowerShell on OS X: Setting Your Path Variable

Hello! There are two tricky little problems when setting your path variable in PowerShell. Here's how to get past them. First, lots of guides show things like this: Which works on Windows but won't work on OS X. The variable name has to be all-caps: Next, the separator between path elements on Windows is ;, … Continue reading PowerShell on OS X: Setting Your Path Variable →

Adam Burns PowerShell October 24, 2020

PowerShell: Python venv Missing Activate.ps1

Hello! Ran in to a weird problem this week: I created a Python 3.7.9 venv, but I couldn't activate it in PoweShell (my shell of choice). The Activate.ps1 script was missing. The core docs for 3.7 list VENV/Scripts/Activate.ps1 as the command to activate venvs in PowerShell (which seemed odd because I'm used to VENV/bin/activate from … Continue reading PowerShell: Python venv Missing Activate.ps1 →

Adam Burns PowerShell, Python October 23, 2020

Terratest Good Practices: Table-Driven Tests

Hello! Terratest is a common way to run integration tests against terraform modules. I use it on many of the modules I develop. If you haven't used it before, check out its quickstart for an example of how it works. For simple cases, the pattern in that quickstart is all you need. But, bigger modules … Continue reading Terratest Good Practices: Table-Driven Tests →

Adam Burns Terraform, Testing October 10, 2020October 10, 2020

Posts navigation

Older posts

I’m Adam Burns, and I do DevOps. That means I automate what System Administrators and Operators used to do by hand. These are my contributions back to the Open Source community that has helped me so much. More about Adam and DevOps.

Check out my projects:

  • GitHub

Meet my rad robot friends:

robomakery logoRobomakery

Read more about:

  • AWS Alexa (1)
  • AWS CloudFormation (13)
  • AWS CloudWatch (3)
  • AWS CodePipeline (2)
  • AWS EC2 (4)
  • AWS IAM (1)
  • AWS Lambda (12)
  • AWS RDS (1)
  • AWS Route 53 (1)
  • AWS VPC (3)
  • Azure Pipelines (1)
  • Boto3 (11)
  • Docker (1)
  • Events (2)
  • Fun (2)
  • PowerShell (16)
  • PowerShell DSC (6)
  • Project Management (8)
  • Pure Programming (13)
  • Python (24)
  • Security (7)
  • Terraform (3)
  • Testing (11)

Unpublished works Copyright © 2016 Adam Burns

Privacy Policy