#programming Articles


GitLab stuck MR

MRs (Merge Requests) in GitLab are similar to PRs (Pull Requests) in GitHub, although the process and language around them are slightly different. The name specifically refers the the request to merge into another branch from a branch (or repository) that isn't the same. Simple enough. Most of the time …

Pelican plugin updates

One of the advantages of our recent pivot to gitlab is that I'm spending some time looking at existing repositories and doing some updates. Most of my repos are private and hosted on our private gitlab server. For public code, I generally place it on GitHub. With the recent automation …

Always check your arguments

Quite a while back, RS wrote a comprehensive ansible role for handling Let's Encrypt certificate issuance and renewal. We both use this role extensively, which is why it was a significant issue when it suddenly started throwing type errors deep inside of the dnspython library during an nsupdate call in …

pre-commit and Pelican

Putting pre-commit to use I mentioned in a previous post about pre-commit, a tool for maintaining code consistency through simple management of pre-commit checks. The first place I decided to give this a whirl was on my blog sites. As you may be aware, I moved my blog sites (both …

pre-commit

Introducing pre-commit hooks I recently became aware of the open-source project: pre-commit, which is "A framework for managing and maintaining multi-language pre-commit hooks." The key feature of pre-commit is that it creates an execution environment for itself in order to enable running hooks without messing with (or creating conflicts with …

XCTest + CoreData = ouch

I put this up in hopes that somebody runs across it more quickly than I did... This weekend, as a "break", I decided to do some work updating an ancient (2003-vintage) piece of code that I wrote when I was doing extensive blogging. I'm not certain it'll ever leave my …

Developing on a 2019 Mac Pro

There's been a lot of discussion about the 2019 Mac Pro and various assertions that it's over-designed, overpriced, or underpowered. Since I decided to replace my venerable 2013 Mac Pro[1] with a 2019 Mac Pro, I figured I'd write up my experience with the device as a developer. The …

gitignore as a service

When you're looking to quickly create an appropriate .gitignore file for a new repository, you can save yourself some time, and possibly aggravation, by using gitignore.io. Available as either a website with a very simple interface (and completion), or as a simple API-based service documentation for the API and …

Ansible become: useful and dangerous

OK, now that I have your attention with the catchy title, let me get right into the reason behind this post. Rob has been doing a lot of work lately on a set of roles to provision raspberry pi systems. I'm grateful for the work in this area, because frankly …

Separating Ansible roles for fun and profit

At ClueTrust, we use a lot of automation to run our systems. It's mostly how just a couple of us can manage hundreds of virtual servers and keep them up-to-date and operational. A few years back, I moved from using Puppet to Ansible, mostly at the suggestion of RS, who …