Jenkins World 2018: Has Your Continuous Integration Pipeline Evolved to Continuous Delivery?
To get the pulse of its audience, our friends at DZone surveyed 550 technical professionals to learn about the trials and tribulations of their DevOps efforts in 2018.
In anticipation of Jenkins World 2018, we pored through the 2018 DZone Guide to DevOps Culture and Process to find the key Continuous Integration Continuous Delivery (CI/CD) takeaways. Here's what we found.[caption id="attachment_20193" align="aligncenter" width="600"]Figure 1[/caption] While 65% of respondents believe they have achieved Continuous Integration (CI) in some form (Figure 1), only 50% believe they have achieved Continuous Delivery (CD). And of that 50%, only 19% believe they have achieved CD across their entire organization. [caption id="attachment_20173" align="aligncenter" width="600"]Figure 2[/caption] Of the 65% of survey respondents indicating they have some form of Continuous Integration in their environment, a whopping 73% of respondents are using Jenkins as their CI system of choice (Figure 2). Jenkins is the market’s leading CI server. Open source, and written in Java, Jenkins enables developers to orchestrate and trigger software builds whenever a change is made in a source code repository. Jenkins is a fantastic resource to increase your pipeline’s capabilities for Continuous Integration. However, at its core, Jenkins is a scripting tool, and like all scripting tools, it presents significant scaling challenges in enterprise environments. [caption id="attachment_20173" align="aligncenter" width="600"]Figure 3[/caption] While the adoption of certain DevOps practices and processes has remained flat, the impact of what has been adopted shows pretty clearly in the report. According to the report, respondents indicating they adopted various DevOps processes (Figure 3) –– performance issue detection, improved overall visibility, thorough audit trails, code quality checks –– showed a Mean Time to Recovery (MTTR) greater than 10% of what respondents without these practices in their software delivery lifecycle (SDLC) showed. While the report does not make a direct correlation to the adoption of these processes and a respondent’s belief that their organization has achieved Continuous Delivery, respondents using any one of these processes, were on average, 14% more likely to say that CD had been achieved across the organization. [caption id="attachment_20173" align="aligncenter" width="600"]Figure 4[/caption] Almost 60% of respondents say they have not evolved their CI processes into an automated CD pipeline (Figure 4). By themselves, CI tools do not provide visibility into bottlenecks, release dependencies, and other usable data needed to scale across an enterprise pipeline. Without a clear understanding of what’s working and what’s not, it's difficult to improve and scale DevOps initiatives in a way that has the most positive business impact. [caption id="attachment_20173" align="aligncenter" width="600"]Figure 5[/caption] For proof that more than half of the respondent’s environments have not evolved to a true Continuous Delivery practice, take a look at the cycle times for the results of code changes getting into the hands of customers (Figure 5). 21% of respondents take 1 to 7 days, 19% take 7 to 30 days, and 11% take anywhere from 1 to 6 months. Conversely, nearly 40% of the respondents see code commits reaching customers in 24 hours or less––almost exactly mirroring the 41.9% that believe they have achieved a Continuous Delivery pipeline from code check-in to production deployment. [caption id="attachment_20173" align="aligncenter" width="600"]Figure 6[/caption] So, what’s holding these companies back from a Continuous Delivery nirvana? For starters, 40% of respondents lack the necessary automated processes (Figure 6). Using a CI tool in an attempt to scale how software is delivered throughout your DevOps toolchain requires writing hundreds or thousands of CI jobs, which usually means that highly paid developers end up writing scripts or jobs by hand to deliver instructions for every activity required to release your software. Getting to CD really requires having a platform that integrates all your tools and automates as many processes as possible.
Corporate culture is also a common hinderance, with 44% of respondents claiming to not have enough collaboration/DevOps practices, 21% believing they don’t have the support of management, and 18% indicating that they don’t have the support of infrastructure and operations teams (Figure 6). Having the right tools in place can go a long way toward promoting a positive culture around DevOps. Tools can empower people to deliver great software, but they must serve to enable the whole delivery pipeline. If a delivery pipeline becomes centered on a specific tool, those not using the tool will feel undervalued, and the culture will suffer. [caption id="attachment_20173" align="aligncenter" width="600"]Figure 7[/caption] Gathering and using the data produced by the tools used in your pipeline is crucial for optimizing software delivery. 41% of respondents, however, are using no metrics to track their CI/CD efforts (Figure 7). For organizations to accelerate and scale their software delivery processes and continually improve the business value of their applications, they need to leverage DevOps Intelligence from all of the tools in their pipelines. The XebiaLabs DevOps Platform, harvests data from Jenkins and cross-analyzes with other tools to provide DevOps intelligence. With full visibility into the inner workings of your CD pipeline, you can take actions based on hard data correlated from tools like XL Release, Jenkins, JIRA, and GitHub. [caption id="attachment_20173" align="aligncenter" width="600"]Figure 8[/caption]The XebiaLabs DevOps Platform checks nearly all of the criteria boxes chosen by respondents for selecting a CI/CD tool for their organization. 47% of respondents view ease of use as key (Figure 8). XL Release, the platform's release orchestration component, is easy for everyone in the business to use. Business users can enjoy a friendly user interface, while tech gurus can take advantage of powerful APIs. By using model-based deployments in XL Deploy, the platform's deployment automation component, changes can easily be made and scaled to all environments, without maintaining scripts or workflows.
The Periodic Table of DevOps Tools v.3 is now available!
The XebiaLabs Periodic Table of DevOps Tools v.3 features 52 new DevOps tools, an integrated DevOps Diagram Generator, and a new look. Check it out!
To learn more about evolving your Continuous Integration efforts into Continuous Delivery, come see us at Jenkins World 2018 in San Francisco. When registering for the event, use the promotion code JWXEBLABCUST for a 20% discount.
Evolve Your Continuous Integration PipelineCI tools, like Jenkins, typically focus only on automating the technical aspects of application delivery: building code, spinning up servers, and so on. But as you scale your software delivery, it's important to expand beyond Jenkin’s excellent CI capabilities to include end-to-end pipeline orchestration of all your processes and standardized deployment to all your target platforms. Simply put, Jenkins is brilliant at automating the steps of individual projects. Fortunately you can keep using Jenkins for what it excels at––Continuous Integration! You just need to integrate it into your release pipeline to achieve Continuous Delivery.The XebiaLabs DevOps Platform helps you evolve your CI Pipeline to CD through:
- Integration of all your DevOps teams and tools (including CI and more) to the larger DevOps pipeline to speed deployments, facilitate communication, provide visibility and access to everyone, and move features to Production faster.
- Standardized, automated, fast delivery pipelines through features like reusable release templates, built-in compliance, and automated security steps.
- Repeatable, self-service deployments to any environment—cloud, container, legacy, and more—with easy rollback and built-in audit tracking (no more digging into Jenkins logs for the auditor).
- Customizable notifications across releases, so everyone can see the right information, when they need it, how they need it, in the format that works best for them.
- Readily accessible analytics and reports based on hard data and real-world best practices, so teams can continuously improve and deliver the features customers want.