{"id":29969,"date":"2018-04-02T09:00:58","date_gmt":"2018-04-02T13:00:58","guid":{"rendered":"https:\/\/sdtimes.com\/?p=29969"},"modified":"2018-04-02T13:25:26","modified_gmt":"2018-04-02T17:25:26","slug":"cicd-driving-force-behind-devops","status":"publish","type":"post","link":"https:\/\/sdtimes.com\/cicd\/cicd-driving-force-behind-devops\/","title":{"rendered":"CI\/CD: The driving force behind DevOps"},"content":{"rendered":"<p><span style=\"font-weight: 400;\">DevOps was not created solely on the idea that developers and operations should play nice together. DevOps is the cultural transformation organizations go through on the road to modern application delivery. The end goal is the ability to release high-quality software more frequently. DevOps enables this by promoting communication and collaboration. <\/span><\/p>\n<p><span style=\"font-weight: 400;\">\u201cToday, teams are supposed to make changes a lot faster. Your chances of doing that without developers and ops people working together successfully are pretty much zero,\u201d said Paul Stovell, founder and CEO of Octopus Deploy.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">The driving force behind DevOps, the force that relies on that cohesion and brings it into the modern way of developing and delivering software, is the CI\/CD pipeline. <\/span><\/p>\n<p><span style=\"font-weight: 400;\">\u201cWhile DevOps speaks more to the organizational transformation that takes place in companies that are undergoing digital transformations, the CI\/CD pipeline is the engine that drives DevOps success\u2014and helps them deliver better apps, faster. It\u2019s the core business process by which companies transition from manual, monolithic application delivery to automated, modern application delivery,\u201d said Jeff Scheaffer, general manager of continuous delivery at CA Technologies.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">The CI\/CD pipeline is a term that often comes up when talking about DevOps because it \u00a0was designed to create a bridge between teams and help them see the bigger picture, according to Sezgin K\u00fc\u00e7\u00fckkaraaslan, co-founder and VP of engineering at OpsGenie. That bigger picture is getting software out and to customers. <\/span><\/p>\n<p><span style=\"font-weight: 400;\">\u201cCI\/CD pipelines are the fastest way to production. They enable devs to easily build, package, integrate, test, and release code by automating manual, error-prone steps,\u201d he said.<\/span><\/p>\n<p><strong>RELATED CONTENT: <a href=\"https:\/\/sdtimes.com\/cicd\/guide-continuous-integration-continuous-delivery-tools\/\">A full guide to CI\/CD solutions<\/a><\/strong><\/p>\n<p><span style=\"font-weight: 400;\">While DevOps focuses on the culture, CI\/CD focuses on the process and tools necessary to help teams adapt to a culture of continuous everything, K\u00fc\u00e7\u00fckkaraaslan added.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">The CI\/CD pipeline is a key enabler of DevOps because it removes the friction within the DevOps process so that changes can happen more quickly and go to production faster, according to Octopus\u2019 Stovell. The more friction you remove, the faster the cycle happens, he explained. <\/span><\/p>\n<p><span style=\"font-weight: 400;\">\u201cIt means you are moving the business forward and creating this beautiful feedback cycle and a continuous improvement environment,\u201d said Stovell.<\/span><\/p>\n<p><b>How to keep the pipeline flowing for you<\/b><br \/>\n<span style=\"font-weight: 400;\">One way to think of the pipeline is as a ecosystem or lifecycle, according to Dan McFall, president and CEO of Mobile Labs. \u201cIt is actually a loop back in upon itself to be re-released. That is what we are talking about in the pipeline. It is a continuous run of writing code, testing code, deploying code, retesting it in production and then completing the feedback to the whole process again. It is the ability to release with confidence and keep running everything,\u201d he said. <\/span><\/p>\n<p><span style=\"font-weight: 400;\">Thinking about the pipeline more broadly will allow you to see the entire lifecycle of not just getting software into production, but how it gets there and what happens to it afterwards. That way if things fail, you can see what went wrong and recover easily, according to Octopus\u2019 Stovell.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">The most important aspect in the CI\/CD pipeline is the C, which stands for continuous. In order to be successful at CI and CD, you have to have \u201cthe ability to constantly move without having to halt everything,\u201d said Patrick Poulin, founder of API Fortress. <\/span><\/p>\n<p><span style=\"font-weight: 400;\">The pipeline consists of a release stage where you understand what you are creating, then testing stages, a pre-production stage, deployment stage and then ultimately production. Of course, this is an oversimplification of the pipeline, according to Robert Stroud, chief product officer for XebiaLabs, but the idea is to move through these stages or approval points in an automatic fashion. \u201cOne of the opportunities in the industry at the moment is there are a couple of hand-off points where we hand off to the development team, testing team, staging team and then the deployment team,\u201d said Stroud. \u201cThe real opportunity for velocity is automation across all those steps and stages.\u201d <\/span><\/p>\n<p><span style=\"font-weight: 400;\">It is visualized as a pipeline because changes ideally flow from start to finish one after another, according to CA\u2019s Scheaffer.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">At a high level, the pipeline \u201cincludes compiling, packaging, and running basic tests prior to a code base merge. After your code is in the base, the main branch of your version control software, additional tests are run to ensure your apps work with real configuration and other services. Performance and security tests are also run at this point. From here you deploy code to staging and then to production,\u201d said OpsGenie\u2019s K\u00fc\u00e7\u00fckkaraaslan<\/span><\/p>\n<p><span style=\"font-weight: 400;\">The best way to keep the pipeline working for your business is keeping it simple, visible and measurable, according to CA\u2019s. Key factors here include automation and orchestration of the pipeline, improvement, alignment with all stakeholders, and ability to assess what good looks like. <\/span><\/p>\n<p><span style=\"font-weight: 400;\">\u201cDevOps allows you to make progress in more incremental and manageable chunks. It gives you the ability to have more confidence when software is ready and that you are truly delivering the right thing,\u201d said Mobile Labs\u2019 McFall. <\/span><\/p>\n<p><b>Beware of kinks<\/b><br \/>\n<span style=\"font-weight: 400;\">Your pipeline should be fluid where stages are occurring simultaneously. \u201cFor example, testing is not waiting for development to complete writing code to start the testing process. Instead, testing occurs in tandem with development\u2014continuously testing smaller chunks of code in parallel with development,\u201d said CA\u2019s Scheaffer.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Scheaffer explained the pipeline is like a fiber optic cable containing many stages of glass fibers. \u201cEach glass fiber can represent the workflow of an individual application, but you will likely have many different applications moving through your pipeline, and you are coordinating releases for multiple strands,\u201d he said.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">However, having a bunch of moving parts happening at once can easily introduce complications and complexities. Don\u2019t let your pipeline become a bottleneck. OpsGenie\u2019s K\u00fc\u00e7\u00fckkaraaslan suggested DevOps teams constantly be monitoring all of their components to ensure they are uncovering problems and addressing them as soon as possible. <\/span><\/p>\n<p><span style=\"font-weight: 400;\">In addition, he explained teams should keep a close eye on test performance. \u201cIt can be tempting to rush new code into production, but it\u2019s very dangerous to do this without the right testing. The complexity of systems\u2019 interdependencies means there are no limits to what can go wrong. Monitoring how new code performs in a test environment is essential to releasing stable builds. Try to find the optimum balance between fast tests and tests running against an environment that simulates production,\u201d said K\u00fc\u00e7\u00fckkaraaslan. XebiaLabs\u2019 Stroud explained having good testing suites and good test coverage are key to knowing what has been deployed, where and when. <\/span><\/p>\n<p><span style=\"font-weight: 400;\">The CI\/CD pipeline isn\u2019t something you can buy in a box, K\u00fc\u00e7\u00fckkaraaslan explained. That means the pipeline is going to evolve over time, and teams and businesses need to be able to evolve with it. <\/span><\/p>\n<p><span style=\"font-weight: 400;\">\u201cWe continuously work hard to improve our CI\/CD performance, and embrace good practices. This means we are always gathering feedback from everyone involved in delivering new features in order to identify additional improvements. As our business evolves, so must our CI\/CD processes,\u201d he said. <\/span><\/p>\n<p><span style=\"font-weight: 400;\">If your CI\/CD pipeline doesn\u2019t create a feedback loop, then you are not really doing DevOps, Mobile Labs\u2019 McFall explained. \u201cThe benefit of doing this is it allows you to do things a little more quickly with high confidence and more education,\u201d he said. Just because teams can now push everything to production, doesn\u2019t mean they should always do it. That&#8217;s where the feedback loop comes into play because it ensures you are always listening to customers and not just doing this to push out new things. \u201cYou need to stay abreast of the continuous notion of best practices out there. Be aware of what your peers are doing, where their success is, and if there are opportunities to not make the same mistakes others have,\u201d said McFall. <\/span><\/p>\n<p><span style=\"font-weight: 400;\">Stay away from quick fix approaches, said CA\u2019s Scheaffer. \u201cWith anything in life, the quick win is tempting but can come with a price. In CI\/CD pipelines, this shows up as technical debt that manifests as plateaued progress, the inability to engage other teams, and an inconsistent understanding of what \u2018good\u2019 is within an organization. The result is too much rework spent rebuilding the pipeline process,\u201d he explained. McFall believes organizations constantly try to find a one size fits all approach to tooling, when what they really need to do is find out what makes sense to their business and risk profile. <\/span><\/p>\n<p><span style=\"font-weight: 400;\">Leverage automation as much as possible, according to Stroud, but don\u2019t fall into silos of automation. Stroud explained a common problem in the pipeline today is having silos of automation where organizations aren\u2019t talking across all departments yet. \u201cOne of the pivotal rules in DevOps is that we need to have consistent collaboration across the toolchain, not having that is one of the biggest traps for young players right now,\u201d Stroud explained. Organizations can address this by standardizing and rationalizing the tools they use in each of these silos. <\/span><\/p>\n<p><span style=\"font-weight: 400;\">Lastly, don\u2019t fall into a blame culture. When something fails it is not so much about asking the who, what, where and why but rather how can you do better, how can you drive velocity, and how can you deliver better outcomes, according to XebiaLabs\u2019 Stroud. \u201cYou want people to experiment and use trial and error to learn. This has to be a basic tenet of DevOps rather than having deep post mortems of who we can blame after a piece of change is deployed and doesn\u2019t meet requirements. Use that experience or feedback to learn from it and change your processes in the future so you can continually drive value,\u201d he said. <\/span><\/p>\n<p><b>Continuous delivery vs continuous deployment<\/b><br \/>\n<span style=\"font-weight: 400;\">While CD is mostly commonly known as continuous delivery, many organizations are beginning to think of it in terms of continuous development, according to Robert Stroud, chief product officer for XebiaLabs.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">What is happening today is that software changes are beginning to get smaller in size, nature and incremental differentiation. This change is enabling teams to get to a point where they can be automatically deployed. \u201cThe reality is where we are actually going to be ending up is in a situation where we are deploying at mini rates. Change is happening instantaneously. Maybe on a weekly basis or in some organizations they collect and group the change and deploy it on a monthly basis. It depends on the business and the business appetite for transition,\u201d said Stroud. <\/span><\/p>\n<p><span style=\"font-weight: 400;\">In order to keep up with the change, teams need to be practicing good deployment methods such as canary releases where changes are rolled out to a small sample size of their audience at once so the change can be validated, or a blue-green deployment where the release is staged in a manner that allows for various parts of the audience or customers to receive the change in a controlled manner. This also enables feedback to the developer so they can make sure what is being delivered was actually desired.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">A common mistake when it comes to deploying software is that teams will compile the code, deploy it to a test environment and when it is time for production they will compile the code again and deploy it to production, said Paul Stovell, founder and CEO of Octopus Deploy. \u201cThat is a bad practice because a lot things can sneak in when you are building it a second time. You have no guarantee that your test is really what is going into production,\u201d he said. The right way to do it is to build once, keep a copy of the build and files that came out of the build process and then deploy it to test and to production. \u00a0<\/span><\/p>\n<p><span style=\"font-weight: 400;\">The other way to successfully achieve continuous deployment is to have a consistent process for each environment. \u201cThe best way to guarantee the production deployment is going to work is to make sure the exact process you run into production is as close as possible to every other environment,\u201d said Stovell. <\/span><\/p>\n<p><span style=\"font-weight: 400;\">A higher level view of the deployment pipeline is known as a DevOps Assembly Line, according to OpsGenie\u2019s K\u00fc\u00e7\u00fckkaraaslan. \u201cThe challenge is that the DevOps toolchain is not as fully developed as what is available for CI\/CD, and involves human dependencies that can be inefficient. The DevOps Assembly Line attempts to connect activities into event-driven workflows that can then be associated with specific applications or services,\u201d he said. <\/span><\/p>\n<p><b>Implementing an API-led DevOps approach <\/b><br \/>\n<span style=\"font-weight: 400;\">If you think of the CI\/CD pipeline as a hose that is constantly running to supply DevOps, API testing is a kink that is slowing down the flow, according to Patrick Poulin, founder of API Fortress. <\/span><\/p>\n<p><span style=\"font-weight: 400;\">API testing has become a pain point in a DevOps development process simply because it has been ignored up until now. \u201cIt is one of those things that people have been procrastinating on because maybe they either haven\u2019t had a tool out there that makes it easy or because it requires a lot of development work,\u201d he said. <\/span><\/p>\n<p><span style=\"font-weight: 400;\">If teams aren\u2019t testing the APIs, either they won\u2019t catch when an error happens or it will take them weeks to even discover the error because unless an API is entirely down, they won\u2019t see it. \u201cIt ends up being an expensive error that can last for because because the teams are just not comprehensively testing it,\u201d said Poulin. <\/span><\/p>\n<p><span style=\"font-weight: 400;\">DevOps teams need to be putting in the same level of effort into API testing as they are into automating the testing of websites and apps. \u201cAPIs are just as critical if nore more critical than the front end,\u201d Poulin said, \u201cAPIs touch every part of the company and therefore being able to have insight as to the testing, the reliability and the uptime of them should be available.\u201d<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Teams should provide complete coverage of all their APIs, not just testing a single endpoint, but also creating integration test, which is a multi step task that reproduces common user flows. It is not only important to know how one feature works, you need to know how it works when coupled with a bunch of other features or processes, Poulin explained. \u201cWhen you test everything out in a similar way to how a real world user would experience it, then you start seeing the cracks in between pieces,\u201d he said. <\/span><\/p>\n<p><span style=\"font-weight: 400;\">The key to all of this is to find a tool or platform that enables everyone from the CEO all the way down to the developer to access answers to questions like are my APIs up? Was there an API issue yesterday? \u201cIf you have the right tool in place, anyone can get those answers in just a few clicks and get full understanding into the health of their API program,\u201d said Poulin.<\/span><\/p>\n<p><b>Bringing infrastructure to the pipeline<\/b><br \/>\n<span style=\"font-weight: 400;\">There are two value proposals when it comes to DevOps and the CI\/CD pipeline, according to Goran Kimovski, chief technology officer for cloud management solution provider TriNimbus. The first principle is constantly integrating code changes and testing them against a set of defined test criteria. This is a very attractive proposition because you are constantly making sure the code works, according to Kimovski. The second principle is often harder to achieve, and that is accelerated adoption. The application code a developer writes needs to be deployed to some kind of infrastructure, but this process is typically associated with manual and heavy-handed change manage processes, Kimovski explained.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">\u201cThe software industry has had a lot of years to develop things like unit testing and concepts like automated integration testing, end user testing, performance testing and what not,\u201d he said. \u201cThe whole concept of testing infrastructure is still in an early stage where it is inherently difficult to test code.\u201d <\/span><\/p>\n<p><span style=\"font-weight: 400;\">According to Kimovski, that is because developers need to provision and deploy an infrastructure. The traditional scenario of doing this includes actual hardware or a virtual environment that involves traditional networking engineers, IT operations and system admins to understand the technology, put the hardware together, set up the networking, create a virtual machine and hand it over to developers or QA to configure and then to someone else to deploy the app. \u201cIt is being handled through multiple people, and relies on humans to do a lot of manual labor. It is not stable or repeatable,\u201d said Kimovski. Not only is this time consuming, but it introduces outside costs, he added. <\/span><\/p>\n<p><span style=\"font-weight: 400;\">To successfully implement the CI\/CD pipeline for both infrastructure and application code, Kimovski suggests utilizing the cloud. \u201cProvisioning a server in the cloud, running it for 15 minutes and shutting it off means you only pay for those 15 minutes,\u201d he said. \u201cProvisioning a server in some datacenter somewhere means you have to have the physical hardware, so it is an additional cost to your business.\u201d In addition, using physical hardware for testing the infrastructure code provides limitations because not everyone can access it. The cloud democratizes that and moves it into an operating expense, he explained.<\/span><\/p>\n<!-- AddThis Advanced Settings generic via filter on the_content --><!-- AddThis Share Buttons generic via filter on the_content -->","protected":false},"excerpt":{"rendered":"<p>DevOps was not created solely on the idea that developers and operations should play nice together. DevOps is the cultural transformation organizations go through on the road to modern application delivery. The end goal is the ability to release high-quality software more frequently. DevOps enables this by promoting communication and collaboration. \u201cToday, teams are supposed  &hellip; <a class=\"read-more\" href=\"https:\/\/sdtimes.com\/cicd\/cicd-driving-force-behind-devops\/\">continue reading<\/a><!-- AddThis Advanced Settings generic via filter on get_the_excerpt --><!-- AddThis Share Buttons generic via filter on get_the_excerpt --><\/p>\n","protected":false},"author":490,"featured_media":29970,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"om_disable_all_campaigns":false,"cybocfi_hide_featured_image":"","footnotes":"","_links_to":"","_links_to_target":""},"categories":[2398,1],"tags":[1823,13410,4000,23,1316,11125,13408,835,2591,42,254,358,4515,13409,12360,584],"coauthors":[11614],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v23.8 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>CI\/CD: The driving force behind DevOps - SD Times<\/title>\n<meta name=\"description\" content=\"How the CI\/CD pipeline removes friction from process\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/sdtimes.com\/cicd\/cicd-driving-force-behind-devops\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"CI\/CD: The driving force behind DevOps - SD Times\" \/>\n<meta property=\"og:description\" content=\"How the CI\/CD pipeline removes friction from process\" \/>\n<meta property=\"og:url\" content=\"https:\/\/sdtimes.com\/cicd\/cicd-driving-force-behind-devops\/\" \/>\n<meta property=\"og:site_name\" content=\"SD Times\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/SDTimesD2\" \/>\n<meta property=\"article:published_time\" content=\"2018-04-02T13:00:58+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2018-04-02T17:25:26+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/sdtimes.com\/wp-content\/uploads\/2018\/03\/BG_PumpJacks.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"660\" \/>\n\t<meta property=\"og:image:height\" content=\"371\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Christina Cardoza\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@chriscatdoza\" \/>\n<meta name=\"twitter:site\" content=\"@sdtimes\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Christina Cardoza\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"14 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/sdtimes.com\/cicd\/cicd-driving-force-behind-devops\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/sdtimes.com\/cicd\/cicd-driving-force-behind-devops\/\"},\"author\":{\"name\":\"Christina Cardoza\",\"@id\":\"https:\/\/sdtimes.com\/#\/schema\/person\/8291872d437355f6b12cbcd6857a1972\"},\"headline\":\"CI\/CD: The driving force behind DevOps\",\"datePublished\":\"2018-04-02T13:00:58+00:00\",\"dateModified\":\"2018-04-02T17:25:26+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/sdtimes.com\/cicd\/cicd-driving-force-behind-devops\/\"},\"wordCount\":2869,\"commentCount\":8,\"publisher\":{\"@id\":\"https:\/\/sdtimes.com\/#organization\"},\"image\":{\"@id\":\"https:\/\/sdtimes.com\/cicd\/cicd-driving-force-behind-devops\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/sdtimes.com\/wp-content\/uploads\/2018\/03\/BG_PumpJacks.jpg\",\"keywords\":[\"API\",\"API Fortress\",\"API testing\",\"APIs\",\"CA Technologies\",\"CI\/CD\",\"CI\/CD pipeline\",\"continuous delivery\",\"continuous deployment\",\"continuous integration\",\"DevOps\",\"Jenkins\",\"Mobile Labs\",\"Octopus Deploy\",\"opsgenie\",\"XebiaLabs\"],\"articleSection\":[\"Buyers Guide\",\"Latest News\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/sdtimes.com\/cicd\/cicd-driving-force-behind-devops\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/sdtimes.com\/cicd\/cicd-driving-force-behind-devops\/\",\"url\":\"https:\/\/sdtimes.com\/cicd\/cicd-driving-force-behind-devops\/\",\"name\":\"CI\/CD: The driving force behind DevOps - SD Times\",\"isPartOf\":{\"@id\":\"https:\/\/sdtimes.com\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/sdtimes.com\/cicd\/cicd-driving-force-behind-devops\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/sdtimes.com\/cicd\/cicd-driving-force-behind-devops\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/sdtimes.com\/wp-content\/uploads\/2018\/03\/BG_PumpJacks.jpg\",\"datePublished\":\"2018-04-02T13:00:58+00:00\",\"dateModified\":\"2018-04-02T17:25:26+00:00\",\"description\":\"How the CI\/CD pipeline removes friction from process\",\"breadcrumb\":{\"@id\":\"https:\/\/sdtimes.com\/cicd\/cicd-driving-force-behind-devops\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/sdtimes.com\/cicd\/cicd-driving-force-behind-devops\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/sdtimes.com\/cicd\/cicd-driving-force-behind-devops\/#primaryimage\",\"url\":\"https:\/\/sdtimes.com\/wp-content\/uploads\/2018\/03\/BG_PumpJacks.jpg\",\"contentUrl\":\"https:\/\/sdtimes.com\/wp-content\/uploads\/2018\/03\/BG_PumpJacks.jpg\",\"width\":660,\"height\":371},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/sdtimes.com\/cicd\/cicd-driving-force-behind-devops\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/sdtimes.com\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"CI\/CD: The driving force behind DevOps\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/sdtimes.com\/#website\",\"url\":\"https:\/\/sdtimes.com\/\",\"name\":\"SD Times\",\"description\":\"Software Development News\",\"publisher\":{\"@id\":\"https:\/\/sdtimes.com\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/sdtimes.com\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/sdtimes.com\/#organization\",\"name\":\"SD Times\",\"url\":\"https:\/\/sdtimes.com\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/sdtimes.com\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/sdtimes.com\/wp-content\/uploads\/2014\/05\/deafaultlogo.png\",\"contentUrl\":\"https:\/\/sdtimes.com\/wp-content\/uploads\/2014\/05\/deafaultlogo.png\",\"width\":225,\"height\":90,\"caption\":\"SD Times\"},\"image\":{\"@id\":\"https:\/\/sdtimes.com\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/SDTimesD2\",\"https:\/\/x.com\/sdtimes\",\"https:\/\/www.linkedin.com\/company\/sdtimes\/\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/sdtimes.com\/#\/schema\/person\/8291872d437355f6b12cbcd6857a1972\",\"name\":\"Christina Cardoza\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/sdtimes.com\/#\/schema\/person\/image\/66d89d09eb7f22eba27a82092a3bae8e\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/940fd7e02753c2aff1d037c42e0603ac?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/940fd7e02753c2aff1d037c42e0603ac?s=96&d=mm&r=g\",\"caption\":\"Christina Cardoza\"},\"description\":\"Christina Cardoza is the News Editor of SD Times. She is responsible for the oversight of the daily news published to the website as well as the company's weekly newsletter, News on Monday. She covers agile, DevOps, AI, machine learning, mixed reality and software security. She is an undeniable nerd who loves Marvel comics and Star Wars. On Follow her on Twitter at @chriscatdoza!\",\"sameAs\":[\"https:\/\/x.com\/chriscatdoza\"],\"url\":\"https:\/\/sdtimes.com\/author\/christina-mulligan\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"CI\/CD: The driving force behind DevOps - SD Times","description":"How the CI\/CD pipeline removes friction from process","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/sdtimes.com\/cicd\/cicd-driving-force-behind-devops\/","og_locale":"en_US","og_type":"article","og_title":"CI\/CD: The driving force behind DevOps - SD Times","og_description":"How the CI\/CD pipeline removes friction from process","og_url":"https:\/\/sdtimes.com\/cicd\/cicd-driving-force-behind-devops\/","og_site_name":"SD Times","article_publisher":"https:\/\/www.facebook.com\/SDTimesD2","article_published_time":"2018-04-02T13:00:58+00:00","article_modified_time":"2018-04-02T17:25:26+00:00","og_image":[{"width":660,"height":371,"url":"https:\/\/sdtimes.com\/wp-content\/uploads\/2018\/03\/BG_PumpJacks.jpg","type":"image\/jpeg"}],"author":"Christina Cardoza","twitter_card":"summary_large_image","twitter_creator":"@chriscatdoza","twitter_site":"@sdtimes","twitter_misc":{"Written by":"Christina Cardoza","Est. reading time":"14 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/sdtimes.com\/cicd\/cicd-driving-force-behind-devops\/#article","isPartOf":{"@id":"https:\/\/sdtimes.com\/cicd\/cicd-driving-force-behind-devops\/"},"author":{"name":"Christina Cardoza","@id":"https:\/\/sdtimes.com\/#\/schema\/person\/8291872d437355f6b12cbcd6857a1972"},"headline":"CI\/CD: The driving force behind DevOps","datePublished":"2018-04-02T13:00:58+00:00","dateModified":"2018-04-02T17:25:26+00:00","mainEntityOfPage":{"@id":"https:\/\/sdtimes.com\/cicd\/cicd-driving-force-behind-devops\/"},"wordCount":2869,"commentCount":8,"publisher":{"@id":"https:\/\/sdtimes.com\/#organization"},"image":{"@id":"https:\/\/sdtimes.com\/cicd\/cicd-driving-force-behind-devops\/#primaryimage"},"thumbnailUrl":"https:\/\/sdtimes.com\/wp-content\/uploads\/2018\/03\/BG_PumpJacks.jpg","keywords":["API","API Fortress","API testing","APIs","CA Technologies","CI\/CD","CI\/CD pipeline","continuous delivery","continuous deployment","continuous integration","DevOps","Jenkins","Mobile Labs","Octopus Deploy","opsgenie","XebiaLabs"],"articleSection":["Buyers Guide","Latest News"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/sdtimes.com\/cicd\/cicd-driving-force-behind-devops\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/sdtimes.com\/cicd\/cicd-driving-force-behind-devops\/","url":"https:\/\/sdtimes.com\/cicd\/cicd-driving-force-behind-devops\/","name":"CI\/CD: The driving force behind DevOps - SD Times","isPartOf":{"@id":"https:\/\/sdtimes.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/sdtimes.com\/cicd\/cicd-driving-force-behind-devops\/#primaryimage"},"image":{"@id":"https:\/\/sdtimes.com\/cicd\/cicd-driving-force-behind-devops\/#primaryimage"},"thumbnailUrl":"https:\/\/sdtimes.com\/wp-content\/uploads\/2018\/03\/BG_PumpJacks.jpg","datePublished":"2018-04-02T13:00:58+00:00","dateModified":"2018-04-02T17:25:26+00:00","description":"How the CI\/CD pipeline removes friction from process","breadcrumb":{"@id":"https:\/\/sdtimes.com\/cicd\/cicd-driving-force-behind-devops\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/sdtimes.com\/cicd\/cicd-driving-force-behind-devops\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/sdtimes.com\/cicd\/cicd-driving-force-behind-devops\/#primaryimage","url":"https:\/\/sdtimes.com\/wp-content\/uploads\/2018\/03\/BG_PumpJacks.jpg","contentUrl":"https:\/\/sdtimes.com\/wp-content\/uploads\/2018\/03\/BG_PumpJacks.jpg","width":660,"height":371},{"@type":"BreadcrumbList","@id":"https:\/\/sdtimes.com\/cicd\/cicd-driving-force-behind-devops\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/sdtimes.com\/"},{"@type":"ListItem","position":2,"name":"CI\/CD: The driving force behind DevOps"}]},{"@type":"WebSite","@id":"https:\/\/sdtimes.com\/#website","url":"https:\/\/sdtimes.com\/","name":"SD Times","description":"Software Development News","publisher":{"@id":"https:\/\/sdtimes.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/sdtimes.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/sdtimes.com\/#organization","name":"SD Times","url":"https:\/\/sdtimes.com\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/sdtimes.com\/#\/schema\/logo\/image\/","url":"https:\/\/sdtimes.com\/wp-content\/uploads\/2014\/05\/deafaultlogo.png","contentUrl":"https:\/\/sdtimes.com\/wp-content\/uploads\/2014\/05\/deafaultlogo.png","width":225,"height":90,"caption":"SD Times"},"image":{"@id":"https:\/\/sdtimes.com\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/SDTimesD2","https:\/\/x.com\/sdtimes","https:\/\/www.linkedin.com\/company\/sdtimes\/"]},{"@type":"Person","@id":"https:\/\/sdtimes.com\/#\/schema\/person\/8291872d437355f6b12cbcd6857a1972","name":"Christina Cardoza","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/sdtimes.com\/#\/schema\/person\/image\/66d89d09eb7f22eba27a82092a3bae8e","url":"https:\/\/secure.gravatar.com\/avatar\/940fd7e02753c2aff1d037c42e0603ac?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/940fd7e02753c2aff1d037c42e0603ac?s=96&d=mm&r=g","caption":"Christina Cardoza"},"description":"Christina Cardoza is the News Editor of SD Times. She is responsible for the oversight of the daily news published to the website as well as the company's weekly newsletter, News on Monday. She covers agile, DevOps, AI, machine learning, mixed reality and software security. She is an undeniable nerd who loves Marvel comics and Star Wars. On Follow her on Twitter at @chriscatdoza!","sameAs":["https:\/\/x.com\/chriscatdoza"],"url":"https:\/\/sdtimes.com\/author\/christina-mulligan\/"}]}},"_links":{"self":[{"href":"https:\/\/sdtimes.com\/wp-json\/wp\/v2\/posts\/29969"}],"collection":[{"href":"https:\/\/sdtimes.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/sdtimes.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/sdtimes.com\/wp-json\/wp\/v2\/users\/490"}],"replies":[{"embeddable":true,"href":"https:\/\/sdtimes.com\/wp-json\/wp\/v2\/comments?post=29969"}],"version-history":[{"count":3,"href":"https:\/\/sdtimes.com\/wp-json\/wp\/v2\/posts\/29969\/revisions"}],"predecessor-version":[{"id":30017,"href":"https:\/\/sdtimes.com\/wp-json\/wp\/v2\/posts\/29969\/revisions\/30017"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/sdtimes.com\/wp-json\/wp\/v2\/media\/29970"}],"wp:attachment":[{"href":"https:\/\/sdtimes.com\/wp-json\/wp\/v2\/media?parent=29969"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/sdtimes.com\/wp-json\/wp\/v2\/categories?post=29969"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/sdtimes.com\/wp-json\/wp\/v2\/tags?post=29969"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/sdtimes.com\/wp-json\/wp\/v2\/coauthors?post=29969"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}