SlideShare a Scribd company logo
1 of 17
DEV2 -Continuous Delivery in the Real
World - Techniques to Reduce the
Developers Blood Pressure
Presented by Nikolai Blackie
Adaptiv Integration
9th of September 2012
My First Unit Test – 28th October 2003
Agenda
 Continuous Delivery
 Deployment Pipelines
 Configuration Management
 Deployment Scripting
 Octopus Deploy
Software Delivery Anti-Patterns


               Deploying Software Manually


      Deploying to a Production-like Environment Late

      Manual Configuration Management of Production
                      Environments
Continuous Delivery Benefits

               Empowering Teams

                Reducing Errors

                Lowering Stress

              Deployment Flexibility

             Practice Makes Perfect
Principles of Software Delivery

    Repeatable, Reliable Process for Releasing Software

               Automate Almost Everything

       If It Hurts, Do It More, Bring the Pain Forward

                      Build Quality In

     Everybody Is Responsible for the Delivery Process

                 Continuous Improvement
Deployment Pipeline
                                                          Automated             User
 Delivery Team   Version Control   Build & Unit Tests
                                                        Acceptance Tests   Acceptance Tests




                                                                                        Release
Delivery Pipeline
                                                                               Source Control
                               Environment
       Source Code
                               Configuration



                                                                 Continuous Integration Server
                              Deploy & Test
     Build & Unit Test
                             Package Release     Package


Continuous Delivery Server
                                                 QA Initiated            Ops Initiated
                                                 Deployment              Deployment


Environments
                               Automated            User
                                                                      Staging/Production
                             Acceptance Test   Acceptance Test
Deployment Pipeline Best Practices
            Only Build Your Binaries Once

     Deploy the Same Way to Every Environment

            Smoke-Test Your Deployments

           Deploy into a Copy of Production

       Each Change Should Propagate Instantly

     If Any Part of the Pipeline Fails, Stop the Line
Configuration Management
      Keep Absolutely Everything in Version Control
                • Dependent frameworks & components
                         • 3rd Party Binaries
                          • All configuration
                    Application Configuration
            • Application configuration created at deploy time
           • Use a template and environment specific settings
                   Deployment Configuration
     • Configuration for deployment activities derived at deploy time
                   • E.g. Host credentials for AppPools
Deployment Scripting
      Use a deployment script per application package

  Use an Appropriate Technology to Deploy Your Application

   Use the Same Scripts to Deploy to Every Environment

       Evolve Your Deployment System Incrementally

                                 Tips
                       • Always Use Relative Paths
                         • Eliminate Manual Steps
         • Constrain Your Application with Integrated Smoke Tests
PowerShell Deployment Scripting
          Use certificates to enforce security

              Use Deploy Orchestrators
                      • PreDeploy.ps1
                        • Deploy.ps1
                     • PostDeploy.ps1
                    • DeployFailed.ps1
         Create Common PowerShell Modules
                         • BizTalk
                            • IIS
                         • MSMQ
                           • SQL
                    • Windows Services
Octopus Deploy
                              NuGet
                             Package
       CI
                                2          Octopus Server
 Package Release    NuGet
                   Package    NuGet
                      1      Package
                                3          Package Step 1

                                           Package Step 2

                                           Package Step 3



                        Octopus Tentacle   Octopus Tentacle   Octopus Tentacle
                             UAT               Staging           Production
Continuous Delivery Servers
                   Octopus Deploy

              Team Foundation Server

                  ThoughtWorks Go

                Urban{Code} uDeploy

      Nolio Application Release Operations Suite

                 XebiaLabs Deployit
Code Camp Sponsors
Questions?

More Related Content

What's hot

The Evolution of Agile - Continuous Delivery - Extending Agile out to Product...
The Evolution of Agile - Continuous Delivery - Extending Agile out to Product...The Evolution of Agile - Continuous Delivery - Extending Agile out to Product...
The Evolution of Agile - Continuous Delivery - Extending Agile out to Product...Burns Sheehan
 
Role of Pipelines in Continuous Delivery
Role of Pipelines in Continuous DeliveryRole of Pipelines in Continuous Delivery
Role of Pipelines in Continuous DeliveryMandi Walls
 
Jenkins - From Continuous Integration to Continuous Delivery
Jenkins - From Continuous Integration to Continuous DeliveryJenkins - From Continuous Integration to Continuous Delivery
Jenkins - From Continuous Integration to Continuous DeliveryVirendra Bhalothia
 
Test-Driven Infrastructure with CloudFormation and Cucumber.
Test-Driven Infrastructure with CloudFormation and Cucumber. Test-Driven Infrastructure with CloudFormation and Cucumber.
Test-Driven Infrastructure with CloudFormation and Cucumber. Stelligent
 
Jenkinsconf Presentation - Advance jenkins management with multiple projects.
Jenkinsconf Presentation - Advance jenkins management with multiple projects.Jenkinsconf Presentation - Advance jenkins management with multiple projects.
Jenkinsconf Presentation - Advance jenkins management with multiple projects.Ohad Basan
 
Continuous Integration (CI) - An effective development practice
Continuous Integration (CI) - An effective development practiceContinuous Integration (CI) - An effective development practice
Continuous Integration (CI) - An effective development practiceDao Ngoc Kien
 
Jenkins Workflow Webinar - Dec 10, 2014
Jenkins Workflow Webinar - Dec 10, 2014Jenkins Workflow Webinar - Dec 10, 2014
Jenkins Workflow Webinar - Dec 10, 2014CloudBees
 
IP Expo Nordic: Successful Practices for Continuous Delivery
IP Expo Nordic: Successful Practices for Continuous DeliveryIP Expo Nordic: Successful Practices for Continuous Delivery
IP Expo Nordic: Successful Practices for Continuous DeliveryMandi Walls
 
Continuous integration
Continuous integrationContinuous integration
Continuous integrationAaron Eden
 
Continuous integration
Continuous integrationContinuous integration
Continuous integrationamscanne
 
Journée DevOps : De l'intégration continue au déploiement continu avec Jenkins
Journée DevOps : De l'intégration continue au déploiement continu avec JenkinsJournée DevOps : De l'intégration continue au déploiement continu avec Jenkins
Journée DevOps : De l'intégration continue au déploiement continu avec JenkinsPublicis Sapient Engineering
 
Chef Hack Day Denver
Chef Hack Day Denver Chef Hack Day Denver
Chef Hack Day Denver Chef
 
Continuous Development with Jenkins - Stephen Connolly at PuppetCamp Dublin '12
Continuous Development with Jenkins - Stephen Connolly at PuppetCamp Dublin '12Continuous Development with Jenkins - Stephen Connolly at PuppetCamp Dublin '12
Continuous Development with Jenkins - Stephen Connolly at PuppetCamp Dublin '12Puppet
 
Continuous integration
Continuous integrationContinuous integration
Continuous integrationhugo lu
 
#speakgell - Continuous Integration in iconnect360
#speakgell - Continuous Integration in iconnect360#speakgell - Continuous Integration in iconnect360
#speakgell - Continuous Integration in iconnect360Derek Chan
 
Agile Australia Conference 2011 - Devops live accounts- continuous delivery_st
Agile Australia Conference 2011 - Devops live accounts- continuous delivery_stAgile Australia Conference 2011 - Devops live accounts- continuous delivery_st
Agile Australia Conference 2011 - Devops live accounts- continuous delivery_stNish Mahanty
 
PuppetConf 2016 Customer Keynote: Cloud, Containers & the Impact on IT - Jeff...
PuppetConf 2016 Customer Keynote: Cloud, Containers & the Impact on IT - Jeff...PuppetConf 2016 Customer Keynote: Cloud, Containers & the Impact on IT - Jeff...
PuppetConf 2016 Customer Keynote: Cloud, Containers & the Impact on IT - Jeff...Puppet
 
Standardizing Jenkins with CloudBees Jenkins Team
Standardizing Jenkins with CloudBees Jenkins TeamStandardizing Jenkins with CloudBees Jenkins Team
Standardizing Jenkins with CloudBees Jenkins TeamDeborah Schalm
 

What's hot (20)

The Evolution of Agile - Continuous Delivery - Extending Agile out to Product...
The Evolution of Agile - Continuous Delivery - Extending Agile out to Product...The Evolution of Agile - Continuous Delivery - Extending Agile out to Product...
The Evolution of Agile - Continuous Delivery - Extending Agile out to Product...
 
Role of Pipelines in Continuous Delivery
Role of Pipelines in Continuous DeliveryRole of Pipelines in Continuous Delivery
Role of Pipelines in Continuous Delivery
 
Jenkins - From Continuous Integration to Continuous Delivery
Jenkins - From Continuous Integration to Continuous DeliveryJenkins - From Continuous Integration to Continuous Delivery
Jenkins - From Continuous Integration to Continuous Delivery
 
Test-Driven Infrastructure with CloudFormation and Cucumber.
Test-Driven Infrastructure with CloudFormation and Cucumber. Test-Driven Infrastructure with CloudFormation and Cucumber.
Test-Driven Infrastructure with CloudFormation and Cucumber.
 
Jenkinsconf Presentation - Advance jenkins management with multiple projects.
Jenkinsconf Presentation - Advance jenkins management with multiple projects.Jenkinsconf Presentation - Advance jenkins management with multiple projects.
Jenkinsconf Presentation - Advance jenkins management with multiple projects.
 
Jenkins CI
Jenkins CIJenkins CI
Jenkins CI
 
Continuous Integration (CI) - An effective development practice
Continuous Integration (CI) - An effective development practiceContinuous Integration (CI) - An effective development practice
Continuous Integration (CI) - An effective development practice
 
Jenkins Workflow Webinar - Dec 10, 2014
Jenkins Workflow Webinar - Dec 10, 2014Jenkins Workflow Webinar - Dec 10, 2014
Jenkins Workflow Webinar - Dec 10, 2014
 
IP Expo Nordic: Successful Practices for Continuous Delivery
IP Expo Nordic: Successful Practices for Continuous DeliveryIP Expo Nordic: Successful Practices for Continuous Delivery
IP Expo Nordic: Successful Practices for Continuous Delivery
 
Continuous integration
Continuous integrationContinuous integration
Continuous integration
 
Continuous integration
Continuous integrationContinuous integration
Continuous integration
 
Journée DevOps : De l'intégration continue au déploiement continu avec Jenkins
Journée DevOps : De l'intégration continue au déploiement continu avec JenkinsJournée DevOps : De l'intégration continue au déploiement continu avec Jenkins
Journée DevOps : De l'intégration continue au déploiement continu avec Jenkins
 
Chef Hack Day Denver
Chef Hack Day Denver Chef Hack Day Denver
Chef Hack Day Denver
 
Continuous Development with Jenkins - Stephen Connolly at PuppetCamp Dublin '12
Continuous Development with Jenkins - Stephen Connolly at PuppetCamp Dublin '12Continuous Development with Jenkins - Stephen Connolly at PuppetCamp Dublin '12
Continuous Development with Jenkins - Stephen Connolly at PuppetCamp Dublin '12
 
Continuous integration
Continuous integrationContinuous integration
Continuous integration
 
#speakgell - Continuous Integration in iconnect360
#speakgell - Continuous Integration in iconnect360#speakgell - Continuous Integration in iconnect360
#speakgell - Continuous Integration in iconnect360
 
Agile Australia Conference 2011 - Devops live accounts- continuous delivery_st
Agile Australia Conference 2011 - Devops live accounts- continuous delivery_stAgile Australia Conference 2011 - Devops live accounts- continuous delivery_st
Agile Australia Conference 2011 - Devops live accounts- continuous delivery_st
 
PuppetConf 2016 Customer Keynote: Cloud, Containers & the Impact on IT - Jeff...
PuppetConf 2016 Customer Keynote: Cloud, Containers & the Impact on IT - Jeff...PuppetConf 2016 Customer Keynote: Cloud, Containers & the Impact on IT - Jeff...
PuppetConf 2016 Customer Keynote: Cloud, Containers & the Impact on IT - Jeff...
 
Standardizing Jenkins with CloudBees Jenkins Team
Standardizing Jenkins with CloudBees Jenkins TeamStandardizing Jenkins with CloudBees Jenkins Team
Standardizing Jenkins with CloudBees Jenkins Team
 
Continuous integration with Jenkins
Continuous integration with JenkinsContinuous integration with Jenkins
Continuous integration with Jenkins
 

Viewers also liked

Top ten integration productivity tools and frameworks - Integration Saturday ...
Top ten integration productivity tools and frameworks - Integration Saturday ...Top ten integration productivity tools and frameworks - Integration Saturday ...
Top ten integration productivity tools and frameworks - Integration Saturday ...Nikolai Blackie
 
Biztalk 2013 Launch Briefing
Biztalk 2013 Launch BriefingBiztalk 2013 Launch Briefing
Biztalk 2013 Launch BriefingNikolai Blackie
 
Code Camp Auckland 2015 - DEV1 Microsoft API Approaches 101
Code Camp Auckland 2015 - DEV1 Microsoft API Approaches 101Code Camp Auckland 2015 - DEV1 Microsoft API Approaches 101
Code Camp Auckland 2015 - DEV1 Microsoft API Approaches 101Nikolai Blackie
 
03 Biz Talk 2010 Hands On Day Adapter Pack
03 Biz Talk 2010 Hands On Day  Adapter Pack03 Biz Talk 2010 Hands On Day  Adapter Pack
03 Biz Talk 2010 Hands On Day Adapter PackNikolai Blackie
 
‘Policy-making for digital development: the role of the government’ by Ismael...
‘Policy-making for digital development: the role of the government’ by Ismael...‘Policy-making for digital development: the role of the government’ by Ismael...
‘Policy-making for digital development: the role of the government’ by Ismael...i2tic
 
Manual de Practicas c++
Manual de Practicas c++Manual de Practicas c++
Manual de Practicas c++Liz ʚîɞ
 
Best Seller Vietnam Tour 7 Days
Best Seller Vietnam Tour 7 DaysBest Seller Vietnam Tour 7 Days
Best Seller Vietnam Tour 7 DaysTONY DUNG
 
Award in graduate
Award in graduateAward in graduate
Award in graduateAndrew Lin
 
Chapter 1 ລະບົບຄອມພິວເຕີ (Computer System)
Chapter 1 ລະບົບຄອມພິວເຕີ (Computer System)Chapter 1 ລະບົບຄອມພິວເຕີ (Computer System)
Chapter 1 ລະບົບຄອມພິວເຕີ (Computer System)Phonepaseuth Phonhdala
 
Alfresco Tech Talk Live - REST API of the Future
Alfresco Tech Talk Live - REST API of the Future Alfresco Tech Talk Live - REST API of the Future
Alfresco Tech Talk Live - REST API of the Future Gavin Cornwell
 
EL HARDWARE Y SUS PARTES
 EL HARDWARE Y SUS PARTES  EL HARDWARE Y SUS PARTES
EL HARDWARE Y SUS PARTES c3c3c3cilia
 
Sales strategy for big pharma.
Sales strategy for big pharma.Sales strategy for big pharma.
Sales strategy for big pharma.Marek Golebiowski
 
Tech Talk Live - Mobile SDKs
Tech Talk Live - Mobile SDKsTech Talk Live - Mobile SDKs
Tech Talk Live - Mobile SDKsGavin Cornwell
 

Viewers also liked (18)

Top ten integration productivity tools and frameworks - Integration Saturday ...
Top ten integration productivity tools and frameworks - Integration Saturday ...Top ten integration productivity tools and frameworks - Integration Saturday ...
Top ten integration productivity tools and frameworks - Integration Saturday ...
 
Biztalk 2013 Launch Briefing
Biztalk 2013 Launch BriefingBiztalk 2013 Launch Briefing
Biztalk 2013 Launch Briefing
 
Code Camp Auckland 2015 - DEV1 Microsoft API Approaches 101
Code Camp Auckland 2015 - DEV1 Microsoft API Approaches 101Code Camp Auckland 2015 - DEV1 Microsoft API Approaches 101
Code Camp Auckland 2015 - DEV1 Microsoft API Approaches 101
 
Work at LAICO
Work at LAICOWork at LAICO
Work at LAICO
 
03 Biz Talk 2010 Hands On Day Adapter Pack
03 Biz Talk 2010 Hands On Day  Adapter Pack03 Biz Talk 2010 Hands On Day  Adapter Pack
03 Biz Talk 2010 Hands On Day Adapter Pack
 
‘Policy-making for digital development: the role of the government’ by Ismael...
‘Policy-making for digital development: the role of the government’ by Ismael...‘Policy-making for digital development: the role of the government’ by Ismael...
‘Policy-making for digital development: the role of the government’ by Ismael...
 
Manual de Practicas c++
Manual de Practicas c++Manual de Practicas c++
Manual de Practicas c++
 
Chapter1
Chapter1Chapter1
Chapter1
 
Best Seller Vietnam Tour 7 Days
Best Seller Vietnam Tour 7 DaysBest Seller Vietnam Tour 7 Days
Best Seller Vietnam Tour 7 Days
 
Award in graduate
Award in graduateAward in graduate
Award in graduate
 
Chapter6
Chapter6Chapter6
Chapter6
 
I7 processor
I7 processorI7 processor
I7 processor
 
Chapter 1 ລະບົບຄອມພິວເຕີ (Computer System)
Chapter 1 ລະບົບຄອມພິວເຕີ (Computer System)Chapter 1 ລະບົບຄອມພິວເຕີ (Computer System)
Chapter 1 ລະບົບຄອມພິວເຕີ (Computer System)
 
Alfresco Tech Talk Live - REST API of the Future
Alfresco Tech Talk Live - REST API of the Future Alfresco Tech Talk Live - REST API of the Future
Alfresco Tech Talk Live - REST API of the Future
 
Cognición social
Cognición socialCognición social
Cognición social
 
EL HARDWARE Y SUS PARTES
 EL HARDWARE Y SUS PARTES  EL HARDWARE Y SUS PARTES
EL HARDWARE Y SUS PARTES
 
Sales strategy for big pharma.
Sales strategy for big pharma.Sales strategy for big pharma.
Sales strategy for big pharma.
 
Tech Talk Live - Mobile SDKs
Tech Talk Live - Mobile SDKsTech Talk Live - Mobile SDKs
Tech Talk Live - Mobile SDKs
 

Similar to Continuous Delivery in the real world - techniques to reduce the developers blood pressure

PowerPoint Presentation
PowerPoint PresentationPowerPoint Presentation
PowerPoint Presentationrhofkens
 
Beyond Scrum: Scaling Agile with Continuous Delivery and Subversion
Beyond Scrum: Scaling Agile with Continuous Delivery and SubversionBeyond Scrum: Scaling Agile with Continuous Delivery and Subversion
Beyond Scrum: Scaling Agile with Continuous Delivery and SubversionProduct Marketing Services
 
Devops with Amazon Web Services (January 2017)
Devops with Amazon Web Services (January 2017)Devops with Amazon Web Services (January 2017)
Devops with Amazon Web Services (January 2017)Julien SIMON
 
DevOps with Amazon Web Services (November 2016)
DevOps with Amazon Web Services (November 2016)DevOps with Amazon Web Services (November 2016)
DevOps with Amazon Web Services (November 2016)Julien SIMON
 
Continous integration and delivery for single page applications
Continous integration and delivery for single page applicationsContinous integration and delivery for single page applications
Continous integration and delivery for single page applicationsSunil Dalal
 
Continuous deployment
Continuous deploymentContinuous deployment
Continuous deploymentDaniel
 
Service engineering
Service engineeringService engineering
Service engineeringQingsong Yao
 
Let’s start Continuous Integration with jenkins
Let’s start Continuous Integration with jenkinsLet’s start Continuous Integration with jenkins
Let’s start Continuous Integration with jenkinsTomohide Kakeya
 
Blue Monitor Software Development
Blue Monitor Software DevelopmentBlue Monitor Software Development
Blue Monitor Software Developmenturbantech
 
Blue Monitor Systems Software Development Services
Blue Monitor Systems Software Development ServicesBlue Monitor Systems Software Development Services
Blue Monitor Systems Software Development Servicesbluemonitor
 
Getting to Walk with DevOps
Getting to Walk with DevOpsGetting to Walk with DevOps
Getting to Walk with DevOpsEklove Mohan
 
Continuous Delivery and the Cloud
Continuous Delivery and the CloudContinuous Delivery and the Cloud
Continuous Delivery and the CloudNigel Fernandes
 
Continuous Delivery with a PaaS Application
Continuous Delivery with a PaaS ApplicationContinuous Delivery with a PaaS Application
Continuous Delivery with a PaaS ApplicationMark Rendell
 
DevOps at Amazon: A Look at Our Tools and Processes by Matthew Trescot, Manag...
DevOps at Amazon: A Look at Our Tools and Processes by Matthew Trescot, Manag...DevOps at Amazon: A Look at Our Tools and Processes by Matthew Trescot, Manag...
DevOps at Amazon: A Look at Our Tools and Processes by Matthew Trescot, Manag...Amazon Web Services
 
Automated testing DrupalCamp in Asheville
Automated testing DrupalCamp in AshevilleAutomated testing DrupalCamp in Asheville
Automated testing DrupalCamp in AshevillePromet Source
 

Similar to Continuous Delivery in the real world - techniques to reduce the developers blood pressure (20)

PowerPoint Presentation
PowerPoint PresentationPowerPoint Presentation
PowerPoint Presentation
 
Beyond Scrum: Scaling Agile with Continuous Delivery and Subversion
Beyond Scrum: Scaling Agile with Continuous Delivery and SubversionBeyond Scrum: Scaling Agile with Continuous Delivery and Subversion
Beyond Scrum: Scaling Agile with Continuous Delivery and Subversion
 
Devops with Amazon Web Services (January 2017)
Devops with Amazon Web Services (January 2017)Devops with Amazon Web Services (January 2017)
Devops with Amazon Web Services (January 2017)
 
DevOps with Amazon Web Services (November 2016)
DevOps with Amazon Web Services (November 2016)DevOps with Amazon Web Services (November 2016)
DevOps with Amazon Web Services (November 2016)
 
Continous integration and delivery for single page applications
Continous integration and delivery for single page applicationsContinous integration and delivery for single page applications
Continous integration and delivery for single page applications
 
Continuous deployment
Continuous deploymentContinuous deployment
Continuous deployment
 
Devops architecture
Devops architectureDevops architecture
Devops architecture
 
Continuous delivery-with-maven
Continuous delivery-with-mavenContinuous delivery-with-maven
Continuous delivery-with-maven
 
Service engineering
Service engineeringService engineering
Service engineering
 
Let’s start Continuous Integration with jenkins
Let’s start Continuous Integration with jenkinsLet’s start Continuous Integration with jenkins
Let’s start Continuous Integration with jenkins
 
Blue Monitor Software Development
Blue Monitor Software DevelopmentBlue Monitor Software Development
Blue Monitor Software Development
 
Blue Monitor Systems Software Development Services
Blue Monitor Systems Software Development ServicesBlue Monitor Systems Software Development Services
Blue Monitor Systems Software Development Services
 
2012 01-jenkins-udeploy
2012 01-jenkins-udeploy2012 01-jenkins-udeploy
2012 01-jenkins-udeploy
 
Azure DevOps in Action
Azure DevOps in ActionAzure DevOps in Action
Azure DevOps in Action
 
Getting to Walk with DevOps
Getting to Walk with DevOpsGetting to Walk with DevOps
Getting to Walk with DevOps
 
Continuous Delivery and the Cloud
Continuous Delivery and the CloudContinuous Delivery and the Cloud
Continuous Delivery and the Cloud
 
CD with spinnaker
CD with spinnakerCD with spinnaker
CD with spinnaker
 
Continuous Delivery with a PaaS Application
Continuous Delivery with a PaaS ApplicationContinuous Delivery with a PaaS Application
Continuous Delivery with a PaaS Application
 
DevOps at Amazon: A Look at Our Tools and Processes by Matthew Trescot, Manag...
DevOps at Amazon: A Look at Our Tools and Processes by Matthew Trescot, Manag...DevOps at Amazon: A Look at Our Tools and Processes by Matthew Trescot, Manag...
DevOps at Amazon: A Look at Our Tools and Processes by Matthew Trescot, Manag...
 
Automated testing DrupalCamp in Asheville
Automated testing DrupalCamp in AshevilleAutomated testing DrupalCamp in Asheville
Automated testing DrupalCamp in Asheville
 

More from Nikolai Blackie

Event driven architectures for eCommerce Integration
Event driven architectures for eCommerce IntegrationEvent driven architectures for eCommerce Integration
Event driven architectures for eCommerce IntegrationNikolai Blackie
 
Hybrid integration with self hosted azure api gateways - published v1.0
Hybrid integration with self hosted azure api gateways - published v1.0Hybrid integration with self hosted azure api gateways - published v1.0
Hybrid integration with self hosted azure api gateways - published v1.0Nikolai Blackie
 
Building Event Driven Cloud Solutions with Microsoft Azure Event
Building Event Driven Cloud Solutions with Microsoft Azure EventBuilding Event Driven Cloud Solutions with Microsoft Azure Event
Building Event Driven Cloud Solutions with Microsoft Azure EventNikolai Blackie
 
ACSUG Feb 2018 iPaaS Royal Rumble
ACSUG Feb 2018 iPaaS Royal RumbleACSUG Feb 2018 iPaaS Royal Rumble
ACSUG Feb 2018 iPaaS Royal RumbleNikolai Blackie
 
.NET Alice in a Java Integration Wonderland - Mule Anypoint Platform Microsof...
.NET Alice in a Java Integration Wonderland - Mule Anypoint Platform Microsof....NET Alice in a Java Integration Wonderland - Mule Anypoint Platform Microsof...
.NET Alice in a Java Integration Wonderland - Mule Anypoint Platform Microsof...Nikolai Blackie
 
Global Windows Azure Bootcamp (GWAB) Auckland 2014 - Windows Azure Integrati...
Global Windows Azure Bootcamp (GWAB)  Auckland 2014 - Windows Azure Integrati...Global Windows Azure Bootcamp (GWAB)  Auckland 2014 - Windows Azure Integrati...
Global Windows Azure Bootcamp (GWAB) Auckland 2014 - Windows Azure Integrati...Nikolai Blackie
 
Microsoft cloud integration patterns - BizTalk/Azure
Microsoft cloud integration patterns - BizTalk/AzureMicrosoft cloud integration patterns - BizTalk/Azure
Microsoft cloud integration patterns - BizTalk/AzureNikolai Blackie
 
Acsug scalable windows azure patterns
Acsug scalable windows azure patternsAcsug scalable windows azure patterns
Acsug scalable windows azure patternsNikolai Blackie
 

More from Nikolai Blackie (8)

Event driven architectures for eCommerce Integration
Event driven architectures for eCommerce IntegrationEvent driven architectures for eCommerce Integration
Event driven architectures for eCommerce Integration
 
Hybrid integration with self hosted azure api gateways - published v1.0
Hybrid integration with self hosted azure api gateways - published v1.0Hybrid integration with self hosted azure api gateways - published v1.0
Hybrid integration with self hosted azure api gateways - published v1.0
 
Building Event Driven Cloud Solutions with Microsoft Azure Event
Building Event Driven Cloud Solutions with Microsoft Azure EventBuilding Event Driven Cloud Solutions with Microsoft Azure Event
Building Event Driven Cloud Solutions with Microsoft Azure Event
 
ACSUG Feb 2018 iPaaS Royal Rumble
ACSUG Feb 2018 iPaaS Royal RumbleACSUG Feb 2018 iPaaS Royal Rumble
ACSUG Feb 2018 iPaaS Royal Rumble
 
.NET Alice in a Java Integration Wonderland - Mule Anypoint Platform Microsof...
.NET Alice in a Java Integration Wonderland - Mule Anypoint Platform Microsof....NET Alice in a Java Integration Wonderland - Mule Anypoint Platform Microsof...
.NET Alice in a Java Integration Wonderland - Mule Anypoint Platform Microsof...
 
Global Windows Azure Bootcamp (GWAB) Auckland 2014 - Windows Azure Integrati...
Global Windows Azure Bootcamp (GWAB)  Auckland 2014 - Windows Azure Integrati...Global Windows Azure Bootcamp (GWAB)  Auckland 2014 - Windows Azure Integrati...
Global Windows Azure Bootcamp (GWAB) Auckland 2014 - Windows Azure Integrati...
 
Microsoft cloud integration patterns - BizTalk/Azure
Microsoft cloud integration patterns - BizTalk/AzureMicrosoft cloud integration patterns - BizTalk/Azure
Microsoft cloud integration patterns - BizTalk/Azure
 
Acsug scalable windows azure patterns
Acsug scalable windows azure patternsAcsug scalable windows azure patterns
Acsug scalable windows azure patterns
 

Recently uploaded

Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demoSample pptx for embedding into website for demo
Sample pptx for embedding into website for demoHarshalMandlekar2
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
Ryan Mahoney - Will Artificial Intelligence Replace Real Estate Agents
Ryan Mahoney - Will Artificial Intelligence Replace Real Estate AgentsRyan Mahoney - Will Artificial Intelligence Replace Real Estate Agents
Ryan Mahoney - Will Artificial Intelligence Replace Real Estate AgentsRyan Mahoney
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterMydbops
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESmohitsingh558521
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersRaghuram Pandurangan
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 

Recently uploaded (20)

Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demoSample pptx for embedding into website for demo
Sample pptx for embedding into website for demo
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
Ryan Mahoney - Will Artificial Intelligence Replace Real Estate Agents
Ryan Mahoney - Will Artificial Intelligence Replace Real Estate AgentsRyan Mahoney - Will Artificial Intelligence Replace Real Estate Agents
Ryan Mahoney - Will Artificial Intelligence Replace Real Estate Agents
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL Router
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information Developers
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 

Continuous Delivery in the real world - techniques to reduce the developers blood pressure

  • 1. DEV2 -Continuous Delivery in the Real World - Techniques to Reduce the Developers Blood Pressure Presented by Nikolai Blackie Adaptiv Integration 9th of September 2012
  • 2. My First Unit Test – 28th October 2003
  • 3. Agenda Continuous Delivery Deployment Pipelines Configuration Management Deployment Scripting Octopus Deploy
  • 4. Software Delivery Anti-Patterns Deploying Software Manually Deploying to a Production-like Environment Late Manual Configuration Management of Production Environments
  • 5. Continuous Delivery Benefits Empowering Teams Reducing Errors Lowering Stress Deployment Flexibility Practice Makes Perfect
  • 6. Principles of Software Delivery Repeatable, Reliable Process for Releasing Software Automate Almost Everything If It Hurts, Do It More, Bring the Pain Forward Build Quality In Everybody Is Responsible for the Delivery Process Continuous Improvement
  • 7. Deployment Pipeline Automated User Delivery Team Version Control Build & Unit Tests Acceptance Tests Acceptance Tests Release
  • 8. Delivery Pipeline Source Control Environment Source Code Configuration Continuous Integration Server Deploy & Test Build & Unit Test Package Release Package Continuous Delivery Server QA Initiated Ops Initiated Deployment Deployment Environments Automated User Staging/Production Acceptance Test Acceptance Test
  • 9. Deployment Pipeline Best Practices Only Build Your Binaries Once Deploy the Same Way to Every Environment Smoke-Test Your Deployments Deploy into a Copy of Production Each Change Should Propagate Instantly If Any Part of the Pipeline Fails, Stop the Line
  • 10. Configuration Management Keep Absolutely Everything in Version Control • Dependent frameworks & components • 3rd Party Binaries • All configuration Application Configuration • Application configuration created at deploy time • Use a template and environment specific settings Deployment Configuration • Configuration for deployment activities derived at deploy time • E.g. Host credentials for AppPools
  • 11. Deployment Scripting Use a deployment script per application package Use an Appropriate Technology to Deploy Your Application Use the Same Scripts to Deploy to Every Environment Evolve Your Deployment System Incrementally Tips • Always Use Relative Paths • Eliminate Manual Steps • Constrain Your Application with Integrated Smoke Tests
  • 12. PowerShell Deployment Scripting Use certificates to enforce security Use Deploy Orchestrators • PreDeploy.ps1 • Deploy.ps1 • PostDeploy.ps1 • DeployFailed.ps1 Create Common PowerShell Modules • BizTalk • IIS • MSMQ • SQL • Windows Services
  • 13. Octopus Deploy NuGet Package CI 2 Octopus Server Package Release NuGet Package NuGet 1 Package 3 Package Step 1 Package Step 2 Package Step 3 Octopus Tentacle Octopus Tentacle Octopus Tentacle UAT Staging Production
  • 14.
  • 15. Continuous Delivery Servers Octopus Deploy Team Foundation Server ThoughtWorks Go Urban{Code} uDeploy Nolio Application Release Operations Suite XebiaLabs Deployit