For some reason, my daily archive of Finland’s “clear news” broadcast didn’t work today. Why not? TL;DR: Just a Git snafu.
Quick recap of the archive:
- There are 3 Git repos:
- selkouutiset-scrape simply scrapes the HTML https://yle.fi/selkouutiset at 6 PM every day via a Github Action.
- selkouutiset-scrape-cleaned pulls in
scrape
and turns it into a stack of translated, properly-named Markdown files, by the magic of shell scripts,systemd
timers, and a tiny VM in a datacenter somewhere. - selkouutiset-archive wraps
scrape-cleaned
into a comfy Hugo theme, again with the magic ofsystemd
timers and a tiny VM, and publishes it to Github Pages.
Which part of the chain broke?
scrape
definitely didn’t brake. It’s intentionally as simple as possible.scrape-cleaned
would seem like the likely subject, but it actually pulled and created its Markdown just fine yesterday.- By process of elimination, it must be
archive
- and it was!
The fun thing about noncommercial projects is I can do all of my work out in the open without business ramiffications, which means I can even point to the exact commit that broke things: commit 3f23c17, where I changed the language selector from a static space-separated list of HTML into a neat little <select>
.
How did this break things? I just didn’t have git config rebase.ff true
on on the VM! I caused the local and remote branches to diverge, and so my VM complained every minute for 2 days until I noticed the issue.
Great! My implicit challenge for this project was “No databases, only Git.” This is the smallest of the small, so my reliability expectations are minimal anyway, and much like learning more Vim, learning more Git is a gift that keeps giving in this industry.