This document discusses continuous delivery and outlines its main benefits and steps. Continuous delivery aims to create a predictable, high-quality release process through automation and feedback loops. The key steps include building, quality checks, automated testing, provisioning environments, and production deployment. This allows for low-risk releases, faster delivery of value, and quality improvements. Automating testing is important but some manual testing like smoke testing and user acceptance testing remains necessary. Tools can help set up continuous delivery pipelines to deploy applications through various stages like acceptance testing, capacity testing, and blue/green deployment to production.
Succesful Testing The Continuous Delivery ProcessHuib Schoots
Many organisations want to shorten their time-to-market. By implementing agile they try to shorten the delivery time. Agile projects use practices like continuous integration, automated deployment, (acceptance) test-driven development and regression test automation to get to continuous delivery. In this process build, integration, test, and deployment automation plays an important role.
The delivery of software has to become fast and reliable. But what does it take to get to continuous delivery? What are the testing challenges we face in a continuous delivery? Which test strategies can we apply be able to test continuous delivery?
This talk zooms in on fully automated unit testing and a high degree of automation in the business facing testing to get to continuous delivery. It focusses on solutions (tooling) within a continuous delivery model from a testing perspective. It gives the participants insights in the use of requirements management tooling, test solutions built with tooling like Selenium and Fitnesse, JMeter, Appdynamics and other tooling. How can deployment processes be implemented with the use of the right (often lightweight) tooling? Which test strategy fits in this process and how to organize collaboration between developers, testers and operations?
Finally this talk gives practical examples of projects were these solutions were used.
What will be the learning moments for visitors?
* What is continuous delivery?
* What test challenges do we face in continuous delivery?
* Which test and tool strategies can we apply to continuous integration?
* What makes these strategies successful?
* Lessons learned in testing continuous delivery: what worked, what was the context and what didn't work so well?
CI and CD Across the Enterprise with Jenkins (devops.com Nov 2014)CloudBees
Delivering value to the business faster thanks to Continuous Delivery and DevOps is the new mantra of IT organizations. In this webinar, CloudBees will discuss how Jenkins, the most popular open source Continuous Integration tool, allows DevOps teams to implement Continuous Delivery.
You will learn how to:
* Orchestrate Continuous Delivery pipelines with the new workflow feature,
* Scale Jenkins horizontally in your organization using Jenkins Operations Center by CloudBees,
* Implement end to end traceability with Jenkins and Puppet and Chef.
http://devops.com/news/ci-and-cd-across-enterprise-jenkins/
https://github.com/CloudBees-community/vagrant-puppet-petclinic
Continuous Testing helps provide process improvements that can prevent future defects from occurring. It plays an important role in providing continuous feedback for your software.
SpringOne Platform 2017
Marcin Grzejszczak, Pivotal; Cora Iberkleid, Pivotal
"“I have stopped counting how many times I’ve done this from scratch” - was one of the responses to the tweet about starting the project called Spring Cloud Pipelines. Every company sets up a pipeline to take code from your source control, through unit testing and integration testing, to production from scratch. Every company creates some sort of automation to deploy its applications to servers. Enough is enough - time to automate that and focus on delivering business value.
In this presentation we’ll go through the contents of the Spring Cloud Pipelines project. We’ll start a new project for which we’ll have a deployment pipeline set up in no time. We’ll deploy to Cloud Foundry and check if our application is backwards compatible so that we can roll it back on production."
Succesful Testing The Continuous Delivery ProcessHuib Schoots
Many organisations want to shorten their time-to-market. By implementing agile they try to shorten the delivery time. Agile projects use practices like continuous integration, automated deployment, (acceptance) test-driven development and regression test automation to get to continuous delivery. In this process build, integration, test, and deployment automation plays an important role.
The delivery of software has to become fast and reliable. But what does it take to get to continuous delivery? What are the testing challenges we face in a continuous delivery? Which test strategies can we apply be able to test continuous delivery?
This talk zooms in on fully automated unit testing and a high degree of automation in the business facing testing to get to continuous delivery. It focusses on solutions (tooling) within a continuous delivery model from a testing perspective. It gives the participants insights in the use of requirements management tooling, test solutions built with tooling like Selenium and Fitnesse, JMeter, Appdynamics and other tooling. How can deployment processes be implemented with the use of the right (often lightweight) tooling? Which test strategy fits in this process and how to organize collaboration between developers, testers and operations?
Finally this talk gives practical examples of projects were these solutions were used.
What will be the learning moments for visitors?
* What is continuous delivery?
* What test challenges do we face in continuous delivery?
* Which test and tool strategies can we apply to continuous integration?
* What makes these strategies successful?
* Lessons learned in testing continuous delivery: what worked, what was the context and what didn't work so well?
CI and CD Across the Enterprise with Jenkins (devops.com Nov 2014)CloudBees
Delivering value to the business faster thanks to Continuous Delivery and DevOps is the new mantra of IT organizations. In this webinar, CloudBees will discuss how Jenkins, the most popular open source Continuous Integration tool, allows DevOps teams to implement Continuous Delivery.
You will learn how to:
* Orchestrate Continuous Delivery pipelines with the new workflow feature,
* Scale Jenkins horizontally in your organization using Jenkins Operations Center by CloudBees,
* Implement end to end traceability with Jenkins and Puppet and Chef.
http://devops.com/news/ci-and-cd-across-enterprise-jenkins/
https://github.com/CloudBees-community/vagrant-puppet-petclinic
Continuous Testing helps provide process improvements that can prevent future defects from occurring. It plays an important role in providing continuous feedback for your software.
SpringOne Platform 2017
Marcin Grzejszczak, Pivotal; Cora Iberkleid, Pivotal
"“I have stopped counting how many times I’ve done this from scratch” - was one of the responses to the tweet about starting the project called Spring Cloud Pipelines. Every company sets up a pipeline to take code from your source control, through unit testing and integration testing, to production from scratch. Every company creates some sort of automation to deploy its applications to servers. Enough is enough - time to automate that and focus on delivering business value.
In this presentation we’ll go through the contents of the Spring Cloud Pipelines project. We’ll start a new project for which we’ll have a deployment pipeline set up in no time. We’ll deploy to Cloud Foundry and check if our application is backwards compatible so that we can roll it back on production."
** DevOps Training: https://www.edureka.co/devops **
This Edureka tutorial on "Jenkins pipeline Tutorial" will help you understand the basic concepts of a Jenkins pipeline. Below are the topics covered in the tutorial:
1. The need for Continuous Delivery
2. What is Continuous Delivery?
3. Features before the Jenkins Pipeline
4. What is a Jenkins Pipeline?
5. What is a Jenkinsfile?
6. Pipeline Concepts
7. Hands-On
Check our complete DevOps playlist here (includes all the videos mentioned in the video): http://goo.gl/O2vo13
Demo of how to dockerise and deploy your microservices application to the test environment, how to run selenium tests inside docker and how to put this all together to integrate your tests in your CI/CD pipeline using Jenkins.
Presented at ATA GTR 2016 in Pune.
SD DevOps Meet-up - Jenkins 2.0 and Pipeline-as-CodeBrian Dawson
This is a presentation given at the March 16th San Diego DevOps Meet-up covering some of the upcoming activities around Jenkin 2.0 and the Pipeline plugins which provide for Pipeline-as-Code and enable Jenkins with 1st class pipelines and stages.
Vous n'avez pas pu assister à la journée DevOps by Xebia ? Voici la présentation de Cyrille Le Clerc (Cloudbees) et Geoffroy Warrin (Xebia) : "De l'intégration continue au déploiement continu avec Jenkins"
Mile High Agile 2018 presentation describing continuous integration concepts and how to implement them with a Jenkins single branch Pipeline and with a Jenkins multi-branch Pipeline.
Additional presentation material is included to describe several of the ways that Docker can benefit a continuous integration environment
Feedback on the implementation of an architecture allowing to do some Continuous Delivery in both PHP and Java environments for a leading company in the Telecom Industry. We will describe the methods and tools we have implemented as well as the limitations and difficulties we have encountered. Keywords : Industrialization, DevOps, Continuous Delivery, Ansible, Rundeck, Infrastructure As Code
Continuous Integration Testing Techniques to Improve Chef Cookbook QualityJosiah Renaudin
Chef, Puppet, and other tools that implement “infrastructure as code” are great for configuration management and automated deployments, but it is difficult to test these infrastructure scripts before putting them into production. Since infrastructure as code is a relatively new technology, methodologies for its testing are not yet standardized. Glen Buckholz shares a way to solve the two major problems with testing Chef scripts—[1] capturing a start state similar to your target environment, and [2] rolling back to the starting state when your script fails. Development techniques are typically ad-hoc with most developers creating a personal method of testing in their own environment or circumstance. Glen shows how to use established continuous integration (CI) techniques to allow an automated platform to more quickly generate test results and automatically stage the code to the Chef server. By linking together established CI and testing techniques, we can hold Chef code development to the same mature standard as application programming.
Atlassian faces the same issues as any other software company in the world. The battle for continuous integration glory is fought every day, and at stake is nothing less than our development and delivery speed. Join us to find out how we do it at Atlassian, powered by Bamboo. Because in the Game of Codes, you win... or you die.
Building Efficient Parallel Testing Platforms with DockerLaura Frank Tacho
We often use containers to maintain parity across development, testing, and production environments, but we can also use containerization to significantly reduce time needed for testing by spinning up multiple instances of fully isolated testing environments and executing tests in parallel. This strategy also helps you maximize the utilization of infrastructure resources. The enhanced toolset provided by Docker makes this process simple and unobtrusive, and you’ll see how Docker Engine, Registry, and Compose can work together to make your tests fast.
Managing Editor John Weeks presented at the ‘Pecha Kucha‘ themed ‘Nerd Night‘, briefly reviewing the three eras of Cambodian comics history and the intriguing local/international artists that made it all happen.
** DevOps Training: https://www.edureka.co/devops **
This Edureka tutorial on "Jenkins pipeline Tutorial" will help you understand the basic concepts of a Jenkins pipeline. Below are the topics covered in the tutorial:
1. The need for Continuous Delivery
2. What is Continuous Delivery?
3. Features before the Jenkins Pipeline
4. What is a Jenkins Pipeline?
5. What is a Jenkinsfile?
6. Pipeline Concepts
7. Hands-On
Check our complete DevOps playlist here (includes all the videos mentioned in the video): http://goo.gl/O2vo13
Demo of how to dockerise and deploy your microservices application to the test environment, how to run selenium tests inside docker and how to put this all together to integrate your tests in your CI/CD pipeline using Jenkins.
Presented at ATA GTR 2016 in Pune.
SD DevOps Meet-up - Jenkins 2.0 and Pipeline-as-CodeBrian Dawson
This is a presentation given at the March 16th San Diego DevOps Meet-up covering some of the upcoming activities around Jenkin 2.0 and the Pipeline plugins which provide for Pipeline-as-Code and enable Jenkins with 1st class pipelines and stages.
Vous n'avez pas pu assister à la journée DevOps by Xebia ? Voici la présentation de Cyrille Le Clerc (Cloudbees) et Geoffroy Warrin (Xebia) : "De l'intégration continue au déploiement continu avec Jenkins"
Mile High Agile 2018 presentation describing continuous integration concepts and how to implement them with a Jenkins single branch Pipeline and with a Jenkins multi-branch Pipeline.
Additional presentation material is included to describe several of the ways that Docker can benefit a continuous integration environment
Feedback on the implementation of an architecture allowing to do some Continuous Delivery in both PHP and Java environments for a leading company in the Telecom Industry. We will describe the methods and tools we have implemented as well as the limitations and difficulties we have encountered. Keywords : Industrialization, DevOps, Continuous Delivery, Ansible, Rundeck, Infrastructure As Code
Continuous Integration Testing Techniques to Improve Chef Cookbook QualityJosiah Renaudin
Chef, Puppet, and other tools that implement “infrastructure as code” are great for configuration management and automated deployments, but it is difficult to test these infrastructure scripts before putting them into production. Since infrastructure as code is a relatively new technology, methodologies for its testing are not yet standardized. Glen Buckholz shares a way to solve the two major problems with testing Chef scripts—[1] capturing a start state similar to your target environment, and [2] rolling back to the starting state when your script fails. Development techniques are typically ad-hoc with most developers creating a personal method of testing in their own environment or circumstance. Glen shows how to use established continuous integration (CI) techniques to allow an automated platform to more quickly generate test results and automatically stage the code to the Chef server. By linking together established CI and testing techniques, we can hold Chef code development to the same mature standard as application programming.
Atlassian faces the same issues as any other software company in the world. The battle for continuous integration glory is fought every day, and at stake is nothing less than our development and delivery speed. Join us to find out how we do it at Atlassian, powered by Bamboo. Because in the Game of Codes, you win... or you die.
Building Efficient Parallel Testing Platforms with DockerLaura Frank Tacho
We often use containers to maintain parity across development, testing, and production environments, but we can also use containerization to significantly reduce time needed for testing by spinning up multiple instances of fully isolated testing environments and executing tests in parallel. This strategy also helps you maximize the utilization of infrastructure resources. The enhanced toolset provided by Docker makes this process simple and unobtrusive, and you’ll see how Docker Engine, Registry, and Compose can work together to make your tests fast.
Managing Editor John Weeks presented at the ‘Pecha Kucha‘ themed ‘Nerd Night‘, briefly reviewing the three eras of Cambodian comics history and the intriguing local/international artists that made it all happen.
Tum Teav is a tragic love story about a talented novice monk namedTum and a beautiful adolescent girl named Teav. There are numerousversions of the story that cover all the major modes of expression inCambodian culture. In addition to oral versions, Tum Teav appears indifferent historical texts, as it is generally believed that the story’s charactersare based on actual people and events in Cambodian history. There areliterary versions and modern adaptations of the story for Cambodiantheater and film as well. The different versions of Tum Teav in various genresattest to the story’s enduring importance and popularity in Cambodianculture and society.1
Recovery: Job Growth and Education Requirements Through 2020CEW Georgetown
Recovery: Job Growth and Education Requirements Through 2020: Projections of jobs and education requirements through 2020. This report shows where the jobs will be by education level, occupation and industry. Recovery 2020 is an update to our Help Wanted: Projections of Jobs and Education Requirements Through 2018.
An introduction of events leading the French Revolution of 1789, beginning with a discussion of the Old Regime and ending with the Women's March on Versailles
With the explosion of the maker movement, schools are beginning to embrace creativity. However, what does this mean for assessment? Should we assess the creative process? Should we assess the finished product? Does assessing creativity actually make kids more risk-averse? In this workshop we explore what it means to assess both the creative process and the creative product without leading to risk aversion.
Continuous Integration (CI) is a development practice that requires developers to integrate code into a shared repository several times a day. Each check-in is then verified by an automated build, allowing teams to detect problems early. In this post, Vedamanikandan explains continuous integration.
Do you want a deep dive into the dev/test portion of DevOps and application lifecycle management (ALM)?
Do you want an overview of unit testing, functional UI testing and load testing?
Do you want to learn about continuous deployment?
Do you want to walk through how testers ensure that business value is delivered?
This session is for you.
Covered in this webinar:
- What is Continuous Integration and Why Should You Care?
- CI Workflow and Tools
- CI Example
- Perfecto and CI
- Q&A
By the end of this webinar, you'll be recommending Perfecto for all your customers' CI needs!
DevOps Basics
DevOps Practices
What is CI/CD?
How to design CI/CD pipeline on AWS
Demo-1 Manually create a CI/CD on AWS
Demo-2 Manage cloudformation templates using CI/CD tools on AWS
It includes a link to a step-by-step guide to implementing demo.
PuppetConf 2016: Continuous Delivery and DevOps with Jenkins and Puppet Enter...Puppet
Here are the slides fromCarl Caum and Brian Dawson's PuppetConf 2016 presentation called Continuous Delivery and DevOps with Jenkins and Puppet Enterprise. Watch the videos at https://www.youtube.com/playlist?list=PLV86BgbREluVjwwt-9UL8u2Uy8xnzpIqa
Talk presented at DevOpsDays in Auckland (2017) discussing how DevOps applies to Embedded Software Development. This talk discusses the approaches Navico have taken in the past and are planning to do going forward.
Linux Collaboration Summit Keynote: Transformation: It Takes a Platformcornelia davis
The last decade has seen a revolution in the manner in which digital experiences are brought to consumers. The companies who are not just meeting increased consumer expectations, but are defining them, are operating within very different organizational structures than their predecessors, and are wrapping new processes around them. And they are using a fundamentally different toolset than before. In this talk we will cover a set of processes that serve this new paradigm and we’ll study the patterns that must be present in supporting software development and runtime platforms.
Continuous Delivery with Jenkins declarative pipeline XPDays-2018-12-08Борис Зора
When you start your journey with µServices, you should be confident with your delivery lifecycle. In case of mistake, you should be able to navigate to appropriate tag in vcs to reproduce the bug with a test & go though pipeline within 3 hours to production with high confidence of quality.
We will discuss set of tools that could help you to achieve this within 3 months on your project. It does not include system decoupling suggestions. And in the same time, if you decide to break down monolith, it is better to do with dev & devOps best practices.
Our DevOps Journey
Transforming 6 Month Waterfalls to 1 Hour Code Deploys
https://info.dynatrace.com/17q3_wc_from_agile_to_cloudy_devops_na_registration.html
In the 2nd part of our webinar series, Anita Engleder, DevOps Lead at Dynatrace reviews and dissects lessons learned during the transformational journey moving Dynatrace from an on-prem culture to one that is cloud native. She will lend her perspective as a key member of the team that executed on the original vision: to “implement a new cloud native offering and deploy a new feature release every 2 weeks. Additionally, be able to support a 1-hour lead time from Code Change to Production”.
On November 17th at 1pm/10am PT Anita will present the challenges she and her team faced transforming 6 Months Waterfall to 1 Hour Code Deploys.
In this webinar Anita will discuss:
How to enable a complete cultural shift across multiple teams, in terms of thought process AND execution
What the specific role of her DevOps team is and how it played into the transformation
The role of Feature teams and why continuous feedback is critical for them
How to successfully influence key stakeholders for complete alignment
Today Anita’s team runs 170 production changes every day, running across several AWS Data Centers as well as On-Premise – something that would have been thought impossible only a few years prior.
MyHeritage - QA Automations in a Continuous Deployment environmentMatanGoren
In this presentation we explain the CD mindset of the MyHeritage QA and how we use Watir, Appium, Ruby, Cumcumber and other supporting technologies to allow end to end testing.
These are the link mentioned in the presentation:
Continuous Deployment Applied at MyHeritage - http://www.slideshare.net/RanLevy/continuous-deployment-applied-at-myheritage
Appium - http://appium.io/
Ruby - https://www.ruby-lang.org/en/
Watir - http://watirwebdriver.com/
page-object - https://github.com/cheezy/page-object
Selenium Grid - https://github.com/SeleniumHQ/selenium/wiki/Grid2
Selenium-Grid-Extras - https://github.com/groupon/Selenium-Grid-Extras
Jenkins - https://jenkins-ci.org/
A very big thank you to Michael Palotas from Grid Fusion & eBay International for taking the time and effort to travel across the globe to present at the Australian Test Managers Forum 2014. If you would like any information on TMF please email tmf@kjross.com.au
3. codecentric Nederland BV
• Experience with Continuous Delivery?
• As a tester, do you need to wait for an
acceptable release from developers?
• Loose time doing all repetitive manual stuff?
• Maintain different environments and software versions manually,
over-and-over-and-over…
• Is this really release 1.6.5?
• All sounds familiar?
TYPICAL
11. codecentric Nederland BV
WHAT IS CONTINUOUS DELIVERY
• Continuous Delivery pipeline
• Automation
• Manual control
• Feedback
12. codecentric Nederland BV
WHAT ARE THE MAIN STEPS OF CONTINUOUS DELIVERY?
• Build – compile, unit test, version, package
• Quality – metrics, documentation
• Test – acceptance-, regression- and performance tests
• Provision environments – deployment to test- and staging
environment
• Production – green/blue deployment to production
13. codecentric Nederland BV
WHAT ARE THE KEY BENEFITS OF CONTINUOUS DELIVERY?
• Low-risk releases
• Faster return on investment in software projects
• Improvement of competitiveness and responsiveness
• Quality improvement of new software versions
14. codecentric Nederland BV
ANATOMY IN DETAIL
Source
Code
Commit Stage
Compile
Commit Tests
Assemble
Code Analysis
Artifact Repository
Acceptance Stage
Configure Environment
Deploy Binaries
Smoke Test
Acceptance Tests
UAT
Configure Environment
Deploy Binaries
Smoke Test
Capacity Stage
Configure Environment
Deploy Binaries
Smoke Test
Run Capacity Tests
Production
Configure Environment
Deploy Binaries
Smoke Test
Env.&App
Config
Env.&App
Config
Version Control
Testers
Self-service
deployments
Operations
Perform push
Button releases
Developers
See code metrics
and test failures
reports
binaries
metadata binaries
reports
metadata binaries
reports
metadata
15. codecentric Nederland BV
MAIN STEPS TO CREATE A CONTINUOUS DELIVERY PIPELINE?
• Getting started with virtual environments, e.g. Amazon EC2
• Configure your Continuous Integration Server
• Provisioning your Test, Staging and Production environments
• Configure your Continuous Delivery Pipeline
• Create a Dashboard of your Systems
20. codecentric Nederland BV
OUR SETUP
https://github.com/...
CD Server
Test Server
User Acceptance
Test Server
Production Cluster
Blue / Green
CD Slave
21. codecentric Nederland BV
EXAMPLE – DELIVERY PIPELINE 1/2
Push to Git Repo
1
Provision-Deploy
Acceptance
Commit
Trigger CD Pipeline
2
Build Source Code
3
Run Unit Tests
4
Start EC2 Image
1
Provisioning
2
DB Create Update
3
Deploy WAR
4
Start Tomcat
5
Start Selenium
1
Acceptance Test
Run AATs
2
Version Git Repo
6
Release WAR
7
Run Code Analyse
5
22. codecentric Nederland BV
EXAMPLE – DELIVERY PIPELINE 2/2
Run JMeter
1
Provision-Deploy
UAT
Start EC2 Image
2
Provisioning
3
DB Create Update
4
Deploy WAR
5
Start Tomcat
6
Performance
Test
Select Version
1
Provision-Deploy
PRODBLUE/GREEN
Start EC2 Image
2
Provisioning
3
DB Update
4
Deploy WAR
5
Start Tomcat
6
Select Version
1
26. codecentric Nederland BV
ANATOMY OF A DEPLOYMENT PIPELINE
Release
• Every change results in a trigger of the deployment process
• Software is build once and only once
• The same deployment process for every environment
• Deployment in production-like environments
Commit
Automated
Acceptance Test
Automated
Capacity Test
Manual
Testing
Fast Feedback
Trust in Application Stability
Done
28. codecentric Nederland BV
SUMMARY
• Continuous delivery is a way to create a stable release process
• Manual testing is (still) necessary
• Pull vs Push
• Dashboard