-
April 2 2024
Use Ansible to Configure your Workstation
In this blog post, I share a straightforward way to manage your MacOS workstation using Ansible, based on Jeff Geerling's collection of Ansible roles and collections. After installing the necessary dependencies, such as the Ansible Galaxy mac collection and dotfiles role, you can define the dotfiles you want to symlink, and where to get them, and confogure which packages to install via homebrew. This approach allows you to set up your workstation as code, achieving about 80% of the setup process, with the remaining requiring some manual configuration.
-
March 19 2024
DevOpsDays LA & SCaLE 21x
The conference was a real blast, packed with awesome talks, some seriously geeky stuff, and plenty of chances to mingle with vendors, developer relations teams, and other attendees. I picked up some gems along the way, like Paul Tevis dropping knowledge bombs on building a high-trust culture, the ongoing saga of secrets management, and how DevOps is now just part of doing business. I had some great discussions with fellow attendees about the importance of pushing quality checks to the left, and engaged with talks about the value of Open Source projects and their QA game. Oh, and let's not forget diving deep into potential security headaches like typo-squatting in AI and what that could mean for us. These events aren't just about filling our brains with new info; they're about forging real connections beyond our screens.
-
August 8 2022
Multi-Platform Git Diff and Merge Tools
Maintain a single .gitconfig between different operating systems by using proxy scripts for git diff and git merge tools.
-
March 11 2021
Deploying a Simple Rails App with Ansible
Ruby on Rails is quickly becoming my framework of choice for my personal websites and projects. It's a pleasure to work with and has been easy to learn. But no framework is without its challenges. One of those challenges is of course deploying the app to a server. There are a lot of options for hosting and deploying a Rails app. But, I like to run my own servers which means I have to also take care of deploying to those servers. I'd prefer to be deploying images to AWS ECS but I don't need that kind of infrastructure for my personal website. It's just a blog it can suffer seconds of downtime when I deploy updates. So my approach these days is to use Ansible to handle the deploy steps.
-
March 7 2021
How to Run Rails App Server with Systemd and Ansible
Create a systemd service to run your rails app server.
-
January 29 2018
WP Transients must be used responsibly
We ran into an interesting issue with WooCommerce at work. First, here is the subject of the support request we got from our hosting provider
-
June 13 2016
Whitelist IPs in Nginx
I want to whitelist my clients IP addresses (and my office IPs) to allow them to view a site, while the rest of the world will be redirected to another site, using Nginx. My Nginx server is behind a load balancer.
-
May 17 2016
Capistrano tasks for Magento
Custom tasks for Capistrano that I am using to help manage a Magento website.
-
February 9 2016
Setting up Git HTTP Backend for local collaboration
You want to share a topic branch with a colleague but do not want to push that branch upstream to Github/BitBucket/GitLab, etc. How do you do this? You could create a patch and email it. Or you could do it in the most crazy way possible and use Apache and allow your colleague to pull from your repo directly. This does take a bit more time to setup, but it would also be absolutely crazy dumb for everyone involved. Basically, let's setup a git server on your workstation!
-
June 8 2015
Enable status for php-fpm
Accessing the PHP-FPM Status screen is easy enough. First, enable pm.status in your php pool:
-
July 12 2014
Trying to Troubleshoot extremely high MySQL CPU Usage
MySQL CPU usage was spiking upwards of 1000%. Load average was around 50-60. I could not SSH into the machine though, not immediately.
-
July 10 2014
Securing Git repository from accidental exposure using Chef
It was brought to my attention at the office that a few of our recently launched websites had publicly exposed .git repository information. Unscrupulous users could use the exposed data to pull down the entire commit history, giving them unfiltered access to what is basically the blueprint for the website.