How to Take the Pain Out of Continuous Delivery

CloudBees sponsored this post, which was written independently for The New Stack.
It may be that your enterprise continues to struggle with improving the continuous delivery (CD) part of continuous integration/continuous delivery (CI/CD) in DevOps. Or maybe your organization is just trying to adopt DevOps and CD remains a concept that has yet to be put into practice — even though your team’s software delivery pipeline will require CD at some point in order to remain competitive in today’s deploy fast-and-often world.
If either of the above scenarios describes the status of your organization’s CD processes, you are not alone. CloudBees’ fifth DevOps and Jenkins Community Survey revealed that out of 1,000 Jenkins users, a solid 67% practiced DevOps in 2018. However, the survey also showed that only 49% practiced CD, while other studies have revealed similar CD-adoption rates. Among “high-velocity” CI/CD practitioners in the survey, only 32% had CD fully standardized — not a lot, but relatively high when you compare to the industry average of 18%.
CD, when successfully implemented, can offer tremendous benefits. They include faster and more consistent deployments, more stable code within CI/CD and DevOps, as well as more productive operations and development teams. However, as the above survey data indicates, organizations often struggle with CD, either when first trying to implement it or even after becoming practitioners months or years later.
“We talk a lot about the theoretical, perfect CD pipeline and the theoretical perfect DevOps organization,” said Brian Dawson, a DevOps evangelist for CloudBees. “But for the most part, nobody’s perfect. Everybody has different environments and everybody has unique challenges.”
In other words, the adoption of CD poses challenges, to such an extent it is sometimes described as a “missing link” in CI/CD and DevOps. The good news is that CD can be achieved with the right processes and changes, whether your enterprise has just adopted CI/CD or if improvements need to be made. These improvements also include making cultural shifts — perhaps the hardest part of the equation — collaborating with organizations such as the Continuous Delivery Foundation (CDF) (a Linux Foundation project) and attending conferences, such as the upcoming DevOps World | Jenkins World 2019 in San Francisco, where attendees can acquire and later apply both high-level and practical information about processes and tools for CD, as well as for DevOps.
The CD Cultural Revolution
CD requires automation to implement, of course, but this also does not mean setting and forgetting the process after a developer team pushes a button. What is required is an underlying shift in DevOps culture to make the change.
“When I talk to people, I ask them what their biggest challenge is, when automating their pipeline and transforming to a CD and DevOps organization: and the answer is culture,” Dawson said.
Again, automation and finding the right toolset for the specific needs of your organization is critical for CD, as well as for DevOps, of course. As Dawson pointed out, organizations first began to adopt Jenkins in order to replace more-cumbersome and error-prone manual builds. However, with automation, successful CD requires transposing cultures with the rest of DevOps in ways that should form cross-team relationships and improve collaboration. The end result and goal should also be that all stakeholders are contributing to CD with the wants and needs of the end-user or customer always in sight, Dawson said.
For the developer, CD works well when your team might codify and automate a process for QA with the ongoing collaboration and input from operations, for example — as opposed to software delivery completed by disparate teams with often separate agendas.
“So, now I can’t just solve the problem in my silo, I have to go out and tackle this hard thing called culture,” Dawson said. “And, at the risk of a gross generalization, it’s not necessarily where we focus our energy or skill sets as engineers.”
The expression “fail fast, fail often” is commonly used, but failing miserably at CD still poses worries, while getting started can be a challenge — and this is where CD culture becomes very important, Dawson said.
“When you see successes and failures, you share them with your peers and other teams. You get people interested, and start to inspire this culture of innovation and improvement,” Dawson said. “For the people who are stuck, don’t wait for things to be perfect — work with what you have, and then get better. And realize someone’s ideal CD pipeline and culture may not fit for your organization and figure out how you can get there from architecture, tools and technology to [optimize] your CD process practices and culture.”
The Fellowship of the Foundation
One way to bridge the gap between implementing the necessary cultural changes for CD and tool-selection processes, while continually learning from your peers, is to take part in a working group or foundation, such as the CDF. Created to help introduce processes, standards and other support and stewardship for DevOps teams for open source tools and platforms for deployments on Jenkins and cloud native platforms, members can expect to take better advantage of Jenkins, Jenkins X, Spinnaker, Tekton and a number of other tools for their CD processes and production pipelines.
However, it is important to keep in mind that the CDF’s core mission is to also facilitate and emphasize CD culture, processes and sharing. “Some may have this perception that the CDF is just a tools foundation. But, of course, continuous delivery is much more than tools and is certainly not DevOps in a box,” Tracy Miranda, director, open source community, for CloudBees, said. “When operating in this space, which is much more influenced by culture, and to bring about change, you need to incorporate the human elements.”
In many respects, the CDF’s developer focus is largely patterned on that of the Cloud Native Computing Foundation (CNCF) — a sibling Linux Foundation-managed project. The CDF has, for example, begun presenting the tools of its founding members, while roughly following a similar development timeline to when CNCF was created.
“We’re looking at CNCF as a kind of model for our future roadmap,” Miranda said. “We are also standing on the shoulders of giants.”
As the CD Foundation continues to emerge and begins to offer its members specific guidance about processes, toolsets and culture, its member organizations will be able to “identify the people who are in the same space as you or on the same journey,” Miranda said.
A Conference for CD
The upcoming DevOps World | Jenkins World 2019 (San Francisco, August 12-15 2019) will offer key opportunities for organizations either looking to adopt or to improve their CD processes. With “Transform and Deliver” as the main theme, CD will serve as one of the core focuses for the talks and workshops under the DevOps theme. The idea is to offer organizations both high-level and hands-on information at the workshops for those organizations that may or may not have necessarily made a lot of headway in implementing CD.
“The event will draw impassioned and collaborative people who are not only part of the Jenkins community — we’re seeing sort of an equal level of attendance from people that are less Jenkins community members, and more people interested in achieving CD within DevOps,” Dawson said, who will take part in the panel discussion “A Conversation on Culture: Our Journey.” “So come out, make relationships, go to the reception, go to the social events, introduce yourself to people — that’s where you’re going to do a lot of your learning.”
While seeking both hands-on and high-level information about CD, DevOps World will serve as a “quick hack to your continuous delivery journey,” Miranda said, who will be one of the keynote speakers for “Celebrating 15 years of Jenkins and the Future of CI/CD.”
“[DevOps World attendees] should get the sense that everybody sees CD as important in delivering software changes in such a way that it is going to be the differentiator for your organization, regardless of what business you’re in,” Miranda said.
Learn more about DevOps World | Jenkins World. Then register and use this special code for TNS readers: TNS20. You’ll get a 20% discount.
The Cloud Native Computing Foundation and the Linux Foundation are sponsors of The New Stack.
Feature image via Pixabay.