DevOps
Jenkins Services on Kubernetes Can Drop Docker Now
· ☕ 11 min read
In principle, Jenkins can use Podman to build images in any Kubernetes cluster; this article uses Containerd as the example. 1. Dropping Docker Brings New Challenges to CICD In CICD scenarios, we often need to build and push images within a pipeline. In an earlier document, Creating Jenkins Slaves Dynamically on Kubernetes, I described how mounting the /var/run/docker.

An Old Tree Blooms Anew - Cloud Native Buildpacks
· ☕ 7 min read
1. Buildpacks, an Old Tree Blooms Anew The Buildpacks project was first started by Heroku in 2011 and was widely adopted by PaaS platforms such as Cloud Foundry. In an earlier document, Buildpack for PaaS Deployment, I demonstrated how to deploy a Django application to Heroku. The shortcoming of Buildpacks was that the artifact it produced was in Droplet format, which could not be adapted directly to container platforms.

DevOps Toolchain: Argo CD
· ☕ 5 min read
1. What Problem Argo CD Solves 1.1 Starting from GitOps GitOps originated from a blog post published by Weaveworks in 2017: GitOps - Operations by Pull Request. In it, Alexis introduced a deployment approach that treats Git as the single source of truth. In GitOps practice, we need to define software infrastructure in a Git repository for management.

10 Advanced GitHub Actions Tips You Should Know
· ☕ 9 min read
If you already use GitHub Actions, this article will show you more interesting and useful ways to use it. By the time I finished writing, I had added several more workflows to my repositories. 1. Passing Parameters When a Workflow Runs When a workflow runs, you can allow parameters to be entered on the GitHub Actions page to control the execution logic.

GitHub Actions Online Debugging Tool: debugger-action
· ☕ 5 min read
1. Debugging Until You Want to Quit GitHub Actions is the continuous integration service GitHub launched in October 2018. For open-source projects it offers unlimited free build time, and it supports Linux, MacOs, and Windows systems, which makes it very appealing. But a recent experience changed my view. I submitted a commit, improvement: build and ci, to a colleague’s repository, to improve its continuous build setup.