In most cases, we write a CI/CD workflow where all of the steps succeed. If a step fails, the job and workflow fails. But what do we do when we need the workflow to handle a failing step or job?
Every wanted to dynamically set (or unset) environment variables in your GitHub Actions? Needing more control over the configuration of your steps? Wanting to configure everything using logic written in the language of your choice rather than just relying on GitHub’s expression syntax? This post will show you how to use a powerful technique to take your workflows to the next level.
GitHub Advanced Security (GHAS) helps teams to shift left and secure their development practices. But what do you do when its process its processes and practices doesn’t quite fit your team’s approach? In this post, we’ll look at how to use GitHub Probot to implement your own process in a GitHub-native way.
Last week we built an understanding of how Kubernetes reserves resources on a node. This week we’ll look at how cloud providers configure the resource reservations for their Kubernetes offerings.
Surprised that you can’t fit as many pods on a node as you thought? Wondering why a node with 32 GiB of memory can’t hold four 8 GiB pods? It turns out that there’s a lot more to the story of how Kubernetes allocates resources. In this post, you’ll learn how resources are allocated and how to use that to plan your cluster.