From git submodule to Hugo Modules using Netlify

Git submodules are cumbersome to manage. In my opinion, git submodules are a sort of anti-pattern for Hugo (I know many themes suggest using git submodules). There’s a better way to manage your Hugo site’s theme: Hugo Modules. Suppose you have a Hugo site and use a theme that supports Hugo Modules. I think the theme would need to require a minimum of Hugo v0.55.0. But, more features are available in later versions. Regardless, your mileage may vary: ...

September 27, 2021 · Chris Short

Fear and Loathing in YAML

This post was originally written as the introduction to DevOps’ish 188, has been modified based on feedback, and deemed worthy to share as its own blog post. Photo by Christina Morillo from Pexels We kinda went down a rabbit hole the other day when I suggested folks check out yq, “The aim of the project is to be the jq or sed of yaml files.” First, there’s nothing wrong with this project. I like it, I find the tool useful, and that’s that. But the great debate started over our lord and savior, YAML. Yeah, I know, XML vs. JSON vs. YAML vs. TOML vs. the next thing is a tired and old debate. ...

October 21, 2020 · Chris Short

GitLab Annoyance: Private to Public Repos

I was working on a new Ansible role last week and was having problems with Test Kitchen. The issue I was having was that Test Kitchen was unable to pull in dependencies from GitLab for the Ansible role I was developing. Here is the error message I was seeing: 1 [WARNING]: - rsyslog was NOT installed successfully: - command git clone https://gitlab.logicnow.com/ansible-roles/rsyslog.git rsyslog failed in directory /tmp/tmpEaRVAA (rc=128) I realized that on our internal, private GitLab server a repo needed to be changed from Private to Public. I did not have rights on the repo so I pinged a co-worker who did. Once the repo was public, for some reason, Test Kitchen was still unable to pull in the role. ...

January 23, 2017 · Chris Short

Permanently Remove Any Record of a File From git

A co-worker and I needed to remove all instances of a binary blob from one of our git repos a while back. This was a lot harder than I thought it should have been, in my opinion. However, distributed version control is not really designed to easily allow folks to delete every instance of a file. But, if you ever run into a case where you do need to expunge a file in git here is how we did it. This would work to remove a file from any cloud, service, or local git repository. ...

June 25, 2016 · Chris Short