- Continuous Delivery and DevOps:A Quickstart Guide
- Paul Swartout
- 438字
- 2021-06-10 19:48:35
Tools and techniques
When we talk about tools and techniques, we're not referring exclusively to technical tools, what I'm referring to here is agile tools and techniques that will help the adoption of CD and DevOps—sometimes referred to as engineering best practices. As previously mentioned, a vast number of the CD and DevOps specialist businesses that have come into being in the last decade specialize in technical tools targeting CD and DevOps (mainly DevOps, to be honest); however, there's not a vast amount of adoption of said tools outside of the traditional (Dev)Ops realm. This could be attributed to the specialist knowledge required to master the tools—something developers don't normally have the time/inclination to understand. The opposite is also true of tools and techniques favored by Dev teams but not prevalent within their Ops peers, such as the adoption of scrum, strict version-control, and test-first development.
Some development tool vendors have realized this and built technical tooling to allow for developers to seamlessly interact with so-called DevOps tools and Ops to seamlessly use engineering best practices traditionally targeted at developers. It does have to be said that, at the time of writing, this is still far from the norm.
Going back to environment and culture, consider this: even if developers did have access to so - called DevOps tools, unless the environment and culture is such that they can freely use them (for example, they are freely able to automatically ship code changes to a given environment using a DevOps pipeline), there doesn't seem much point in them having these tools as they can't actually do anything of value with them.
To allow CD and DevOps adoption to thrive, the culture and environment in which both Devs and Ops work should allow for seamless collaboration and interaction. Along with this, the tools and techniques used to deliver software changes should be chosen by and used across both specialisms (for example, Devs should know how to use tools such as Octopus deploy, and Ops should know how to use tool such as Visual Studio).
In relation to techniques, one massive win for CD and DevOps is the configuration-as-code approach. We'll go into this in more detail later, but suffice it to say that without an environment and culture that encourages collaboration, there's a strong possibility that such a game-changing technique will not come to fruition.
Let's see what our personas can do to help:
Thus far, we've been looking at the various parts you'll need for a successful CD and DevOps adoption. Let's now start digging into specific details, starting at the top with the environment.