This is part B highlight of the podcast interview with a real-world, enterprise-scale practitioner of DevOps, Chris Hemphill, Sr. Manager, Configuration / Release / DevTools Engineering at The Active Network.
Below is the excerpt on CI, CD and DevOps.
Tom Parish: Chris, you've mentioned the importance of agile development and that brings up the whole idea of implementing a continuous delivery environment or a continuous delivery process. So how does the concept and the philosophy of DevOps play into continuous development? How critical is it?
Chris Hemphill: To be able to achieve continuous delivery, it has to start with continuous integration. And without a good continuous integration strategy and automation within the continuous integration environment, you're not going to be able to have a high degree of confidence with the build in the version that is moving through the environment. So that's step one.
And then in order to achieve continuous delivery, you also have to have a dynamic and current understanding of the applications state, environment state, database state and configuration state at any given time.
Tom Parish: Yes.
Chris Hemphill: This means understanding exactly what state is an application in and knowing the matrix of all your environments. And then, further, you also need to know the exact state of your environment and how that relates to the applications within that environment.
And just as important is the database and the data within the environment and how it relates in your promotion model as it moves down the pipeline, and out to production. Without the culture of DevOps and the integration with the automation tools, you start to lose insight and understanding in these different areas to be able to have a high degree of confidence in your releases and your builds that go out to production.
There is other point I want to make about continuous delivery and DevOps.
Tom Parish: Please do.
Chris Hemphill: So one of the things about continuous delivery is -- one of the goals is to get -- to reduce your lifecycle, to get features out to market more quickly, which really means that you need to be able to make decisions quickly, (and) act with good information to be able to make decisions quickly.
The only way you can really make good decisions within the timeframe that's needed is by establishing this culture of DevOps.
Tom Parish: That's good. I think it's important to keep bringing back the culture piece. It's a thread that I've heard on a number of conversations. "Hey, it's not the tool. It is the tool but it's the culture with the tool and here's what we mean by culture.” This touches on all the same things that you've mentioned.