Ken Muse
Building GitHub Actions Runner Images With A Tool Cache
If you’re going to build custom images for ARC or standalone VM runners, then you probably want to take some time to preload it with the tools that matter to your builds. If you want that process to work well for the GitHub-provided tools and actions/setup- Actions, then you’ll want to know how to prepopulate the runner’s tool cache.

Read this article

What Is ARC Doing & How Does It Interact With Kubernetes?
Understanding ARC begins with understanding what it does (and does not do) to create runners on Kubernetes. The process is surprisingly straight-forward, and understanding it is key to mastering ARC.

Read this article

The New DevContainer initializeCommand
The world of dev containers is constantly changing. Sometimes, even with community-driven specifications, there is a bit of room for interpretation. The initializeCommand lifecycle script is a great example of this, and the specification has been updated to align with the implementations. Learn how this affects your dev containers (and why your scripts should always be idempotent).

Read this article

Troubleshooting Git Authentication
Whether you’re dealing with bad credentials or connectivity issues, there are a few tricks with Git that can make it easier to understand what’s happening. This post will dive into features of Git that you can use for understanding the credential flow and troubleshooting problems.

Read this article

Getting User Input When Starting a Dev Container
Sometimes you just need a little human interaction. And sometimes you need that to happen when you’re starting up a dev container so you can configure the environment. Thankfully, there is a way to get user input that works with most of the dev container implementations.

Read this article

Automating Azure OIDC Application Federation
Ever needed to automate creating an Azure Entra ID (Azure Active Directory) application and federating it with GitHub? With just a little PowerShell, you can!

Read this article

More Best Practices for Deploying GitHub ARC
Continuing the discussion from last week, here are a few additional recommendations that can improve your ability to manage and scale your ARC deployments.

Read this article

Best Practices for Deploying GitHub ARC
There are some common issues that lead to teams struggling to set up ARC. Nearly all of these can be avoided by following a few simple guidelines. In the first of a two-part post, I’ll outline some of my recommendations for improving your experience setting up ARC.

Read this article

Why You Should Use Dedicated Clusters For GitHub ARC
GitHub ARC is a great way to run your GitHub Actions runners in your own Kubernetes cluster. ARC has its own set of requirements and best practices. One of the most important best practices I recommend is to use a dedicated Kubernetes cluster. This post will explain why.

Read this article

GitHub Actions Injection Attacks
Security is at the heart of what we do in DevOps (if we’re doing it right). This includes protecting our CI/CD processes from malicious users and behaviors. One of the more interesting exploit vectors with build and release pipelines is a classic: the injection attack. This post reviews the basics of injection exploits and shows you how to easily avoid them.

Read this article