GitHub Actions beyond the basics: containers, services, your own runners, dynamic matrices and summaries
Most workflows I see are a list of run: steps on ubuntu-latest, and for most repos that is correct. This post is
about the five features you reach for when that stops being enough: running a job inside a container image, starting
a database next to your tests, bringing your own runners, building the job matrix at run time, and getting plan
output into the PR instead of into a log nobody opens. Each one is a few lines of YAML once you know it exists, and
each one took me longer to find than it should have.