Fixing Jenkins CLI 'ERROR: anonymous is missing the Overall/Read permission'
For the past decade or so, I've been working to automate as much of a Jenkins server build process as possible. There are a few 'hacky' bits to doing so, like managing some Jenkins XML files (or if you really want to go crazy, storing your entire $JENKINS_HOME somewhere in a source control repository!).
One of the most annoying things about automating Jenkins is using the jenkins-cli.jar file to interact with Jenkins on the CLI. It doesn't come
Speaking about Playbooks at AnsibleFest Austin 2018
I'm excited to announce I'll be presenting the session Make your Ansible Playbooks Flexible, Maintainable, and Stable at AnsibleFest Austin in the first week of October.
I've spent a lot of time building, maintaining, and in a few cases, completely restructuring Ansible playbooks over the past five years. I hope to distill a lot of the lessons I've learned into this presentation, and I hope anyone else who is as passionate about infrastructure automation as I am can get a lot out of it
NEDCamp 2018 - Keynote on DevOps
Over the past decade, I've enjoyed presenting sessions at many DrupalCamps, DrupalCon, and other tech conferences. The conferences are some of the highlights of my year (at least discounting all the family things I do!), and lately I've been appreciative of the local communities I meet and get to be a part of (even if for a very short time) at Drupal Camps.
The St. Louis Drupal Users Group has chosen to put off it's annual Camp to 2019

Recovering from surgery and living with my friend, the Stoma
It's been just over two weeks since the big one ; I had my colon removed and was given in its place an ileostomy, which dramatically changes the way I go number two.
As with most stages of my Crohn's journey, I thought I'd write up this blog post with my experiencesâand maybe a liiiiittle sarcasm thrown inâfor the benefit of anyone else going through a similar situation.
Bowel Prep
My doctor requested a full cleanout for this surgery, I guess

Colons, semicolons, and Crohns surgery, oh my!
"Rectum? Darn near killed 'em!"
â My Grandma, every time she has the opportunity...
In a short time, I'll be getting a "total colectomy and proctectomy" (or, for short, "proctocolectomy"!). This is a procedure where a doctor takes a robot with pointy sticks and knives, sets it loose in my belly, and then the robot proceeds to become sentient and take over my body cut out all of my digestive system, from the

Kubernetes' Complexity
Over the past month, I started rebuilding the Raspberry Pi Dramble project using Kubernetes instead of installing and configuring the LEMP stack directly on nodes via Ansible ( track GitHub issues here ). Along the way, I've hit tons of minor issues with the installation, and I wanted to document some of the things I think turn people away from Kubernetes early in the learning process. Kubernetes is definitely not the answer to all application hosting problems, but it is a great fit for some, and it would be a shame

Dell XPS 13 (9360) Review from a lifelong Mac user
I've used Macs as my primary computing devices my entire life. And though I continue to use a Mac for my primary workstation for both work and personal projects, my use of computers has evolved in the past few years quite a bit. With more of my stuff moving into the cloud and fewer software applications being exclusively tied to macOS or Windows, it's given me more freedom to do some amount of work from a tablet (currently iPad Air 2), Mac (currently 2015 (

How to upgrade the SSD hard drive in a Dell XPS 13 (9360)
June 6, 2018 Update : I've also posted a video of the SSD replacement process, embedded below:

Reboot and wait for reboot to complete in Ansible playbook
September 2018 Update : Ansible 2.7 (to be released around October 2018) will include a new reboot module, which makes reboots a heck of a lot simpler (whether managing Windows, Mac, or Linux!):
- name: Reboot the server and wait for it to come back up. reboot:That's it! Much easier than the older technique I used in Ansible < 2.7!
One pattern I often need to implement in my Ansible playbooks is "
Hosted Apache Solr's Revamped Docker-based Architecture
I started Hosted Apache Solr almost 10 years ago, in late 2008, so I could more easily host Apache Solr search indexes for my Drupal websites. I realized I could also host search indexes for other Drupal websites too, if I added some basic account management features and a PayPal subscription planâso I built a small subscription management service on top of my then-Drupal 6-based Midwestern Mac website and started selling a few Solr subscriptions.
Back then, the latest and greatest Solr
