Blog Archive


I like to write. Here's a collection of my blogposts.

The async Puppet pattern


Open Source Puppet 4 Released


ĀµPuppet & Ensible


Puppet: clearing all or a particular node from PuppetDB (exported resources)


Check if Value is Present in Array in Puppet


Making Standard Resources Overwritable In Your Own Puppet Modules


Testing Puppet Resources at the CLI


Presentation: Managing Zabbix Hosts with Puppet’s Config Management


Puppet: could not prefetch yumrepo provider ‘inifile’: Section is already defined, cannot redefine


Follow-up: 3 years of automation with Puppet


3 Years of Puppet Config Management: lessons learned


Puppet performance troubleshooting: using the built-in profiler in standalone puppet apply


Puppet: Error 400 on SERVER ArgumentError: malformed format string – %S at …


Puppet: Error: Could not retrieve catalog from remote server: Error 400 on SERVER: stack level too deep on node something.pp


Setting custom puppet facts from within your Vagrantfile


Facter/Puppet: Could not retrieve selinux: Invalid argument – /proc/self/attr/current


Puppet + Razor: pxe boot failing to load with ‘Operating system not found’


Importing the Puppet Learning VM into VirtualBox: unknown resource type in hardware item


I forgot how to manage a server


Run Nginx proxy in Docker container for HTTP/2


The day Google Chrome disables HTTP/2 for nearly everyone: May 31st, 2016


Staying up-to-date on open source announcements & security issues via Twitter


Coming soon: SysCast


How To Generate a /etc/passwd password hash via the Command Line on Linux


The Otto Project: Meet the Successor to Vagrant