#15 Like data, change also has gravity!

#15 Like data, change also has gravity!

<< Previous Edition: CD & the Scourge of Acronyms

Continuous delivery and continuous deployment are distinct stages in the DevOps pipeline. Using Kubernetes parlance, continuous delivery represents readiness for a change, while continuous deployment represents the liveness of a change. This distinction is beyond the comprehension of humans due to an unrelated reason that I call the "scourge of acronyms", as I have written in a previous blog.

How to measure a change

One of the constant challenges in the DevOps space has been the measurement of performance. DORA has so far done the best job by providing the following four metrics:

  • Deployment frequency (DF)
  • Lead time for changes (LT)
  • Mean time to recovery (MTTR)
  • Change failure rate (CFR)

If change is like a fundamental particle, these four metrics are like its properties. It brings the question of how quantized can a change be. Like a fundamental particle, the less mass a change has (i.e., the smaller a change is), the faster it will move.

Production as a state machine

The best way to represent production is like a state machine. A change can be any mutation in the state of production but can mostly be divided into the following three categories:

  1. Feature
  2. Bug fix
  3. Configuration update

Can a commit represent this mutation? Like an ideal gas, only an ideal commit can fully represent a change. It also needs to be done in ideal circumstances and by an ideal developer.

How about a pull request? Pull request overcomes the fundamental challenges of a commit. Sometimes a pull request may not exactly match with the business/functional behavior change.

For those special cases, we need a higher-level abstraction than a pull request to provide enough flexibility to represent this change. Roost is the only environments-as-a-service platform that enables it by allowing you to create dynamic & ephemeral pre-production environments for a pull request and across multiple pull requests if needed. Check out https://roost.ai to learn more.

>> Next Edition: Is Your DevOps Pipeline Rusted?

要查看或添加评论,请登录

Rishi Yadav的更多文章

社区洞察

其他会员也浏览了