DevOps
A CICD Platform Based on Tekton
· ☕ 8 min read
1. Background 1.1 Problems with the Current Use of Jenkins The orchestration engine is unstable Jenkins is an orchestration engine written in Java, and it stops the world (STW) during a full GC. Under large-scale builds, STW can prevent Jenkins from handling new requests. Heavy builds stall Jenkins stores data in disk files; every pipeline and every build occupies a file directory, producing a huge number of files.

How to Implement an Approval Feature in Tekton
· ☕ 8 min read
1. Basic Features of a CICD Platform A common CICD engine is not suitable to hand directly to the business side. The main reasons are the high learning cost for users, the lack of necessary authentication, and the difficulty of maintenance and upgrades. We usually build on top of a process engine, adapting it to the business to improve usability and encapsulating it for specific scenarios to reduce complexity.

How to Customize Your Own Jenkins Image
· ☕ 10 min read
1. How to Deploy Jenkins To make the tests below easier, let me first introduce two ways to deploy Jenkins. Here I use the shaowenchen/jenkins:2.277.4 image. In a production environment, you should replace it with the official jenkins/jenkins image or your own custom image. 1.1 Running with docker-compose The docker-compose.yaml file

A Universal Pipeline Design
· ☕ 4 min read
1. Decoupling the Engine to Unlock Pipeline Capabilities When designing a system, we often face a dilemma. Do we contain the complexity and offer a single, easy-to-use capability to the outside; or do we release the complexity and return flexibility to the user? This is a real test of product

How Tekton Connects to Physical Machines for Builds
· ☕ 10 min read
1. Why Physical Build Machines Are Needed In the article How to Add a Remote macOS Physical Machine for Jenkins Pipeline Builds, I described how to add a physical build machine in Jenkins. This was not a requirement I made up on a whim — at the time, real ToB commercial customers were actually asking for a solution.