Now that we have a process that automatically builds a container image whenever changes are committed to the git repository, we need a way to get those changes out, either into a development or test environment, or to the production environment. In the gitops world, a deployment is also initiated by a change to the […]
This article is the fourth in the series on how to set up an automated end-to-end workflow for deploying to a Kubernetes cluster. The previous steps accomplished a lot, even if they sound simple. Each involved multiple additional tasks to set up tools and systems, the classic yak shaving scenario. While the first two steps […]
This is the third part of the guide to setting up an automated workflow to deploy code to a Kubernetes cluster following a change in a git repository. The first two parts of this series so far belong in the dev portion of devops. They encompass what most software engineers do to build and test […]
The first article in this series introduced our objective, which is to create an automated workflow that delivers code to a runtime environment once it has been committed to a Git repository. In this part we will look at the next step, which is to package the app so that it can be run in […]
The core function of DevOps is to facilitate and automate the process of delivering code that developers write into production. Where CI/CD is involved, that means that code is compiled, tested and packaged, as applicable, whenever code is committed to a repository. A DevSecOps approach integrates security into the DevOps process through such steps as […]
TIL: Python chained comparison vs and-joined
According to the Python documentation, x < y <= z is equivalent to x < y and y <= z, but real-world testing indicates they produce different code.