This repository contains the RSS feed for the At Least You're Trying podcast. It may seem odd to have my podcast feed on github, but I assure you that it's a key piece of an overly-complex (but valuable) workflow. I configured the github webook to notify the server hosting the official podcast feed every time I push a new episode into the feed. A Node.js service running on my VPS over at Linode takes care of the subsequent cloning and file system housekeeping. This scheme also happens to provide a full version history and an offsite backup of this precious XML file.
But unit tests on a podcast feed?
Yes, this feed has some tests written in Go.
This was my first experience writing Go code, and I chose it due to its simple testing story...go test
.
Since I update the feed by hand, I don't want to be able to make a typo in the publication date and have my podcasting empire come crashing down (this has happened a few times).
The tests can run on a local git commit hook (see bash
belsow) or as a GitHub action (see .github/workflows/go.yml
).
Here are the contents of .git/hooks/pre-commit (don't forget to grant execution permission!):
#!/bin/sh
status=0
badtest="$(go test | grep "FAIL:" | awk '{print $3}')"
if test -n "$badtest" ; then
for bad in $badtest; do
echo "git pre-commit check failed: go test failed: $bad"
done
status=1
fi
exit $status
- RSS, https://kaplon.us/alytfeed
- iTunes, https://itunes.apple.com/us/podcast/at-least-youre-trying/id702153446?mt=2&ign-mpt=uo%3D4
Thanks to archive.org for media hosting and bandwidth.