SlideShare une entreprise Scribd logo
1  sur  9
Continuous Delivery
the nuts and bolts
BRINGING IT TO WOOLWORTHS
The Past…
 Deployments - last minute - others
got to play TT
 Folders
 Databases including rollback scripts
 Web.Config!
 Release notes
 Pain for everyone
 Deployment time measured in hours
and repeated for each
environment
Present aka the pipeline
 Deployments - automated
 Folders use MSBuild
 Transforms use msbuild
 Database use Fluent Migrations
 Release Notes use PowerShell script with
team city API
 Deployment time from build to TEST
environment WW ~10 minutes
Implementation of pipeline
 Came out of retrospective which
highlighted issues with current
deployment processes
 Got 1 week sprint in mid Feb
 Completed MS build scripts
 Integrated FluentMigrator
 Created packages to be consumed by
Octopus Deploy
FTW
 Allowed us to fail fast
 Release to production cadence increased
 Moved away from big mono lithic releases
Reuben’s Buckets
 A build bucket
 Stuff for the build aka state
 A release bucket
 Environment
Build components
 TFS build was complex
 Can test MSBuild scripts locally
 Code reuse
 Release Notes
 Tests, CI, Catch migrations issues
Release
 All the cool kids were using it
 Great visibility of version in specific environment
 Great for providing structure to automate releases
 Has API to further
 Code reuse
 .Net focused
 Transforms now live here
 Is more suited for release where you own the metal
Patai [Questions]

Contenu connexe

Tendances

Open source and cross platform .net
Open source and cross platform .netOpen source and cross platform .net
Open source and cross platform .net
Ibon Landa
 

Tendances (20)

Project Frankenstein: A multitenant, horizontally scalable Prometheus as a se...
Project Frankenstein: A multitenant, horizontally scalable Prometheus as a se...Project Frankenstein: A multitenant, horizontally scalable Prometheus as a se...
Project Frankenstein: A multitenant, horizontally scalable Prometheus as a se...
 
Cloud Native Okteto Cloud
Cloud Native Okteto Cloud Cloud Native Okteto Cloud
Cloud Native Okteto Cloud
 
Loki: An Opensource Zipkin/Prometheus Mashup written in Go.
Loki: An Opensource Zipkin/Prometheus Mashup written in Go.Loki: An Opensource Zipkin/Prometheus Mashup written in Go.
Loki: An Opensource Zipkin/Prometheus Mashup written in Go.
 
gRPC @ Weaveworks
gRPC @ WeaveworksgRPC @ Weaveworks
gRPC @ Weaveworks
 
Writing Rust Command Line Applications
Writing Rust Command Line ApplicationsWriting Rust Command Line Applications
Writing Rust Command Line Applications
 
Docker - fast dev faster testing
Docker - fast dev faster testingDocker - fast dev faster testing
Docker - fast dev faster testing
 
Lyon Studytrip - Microservices in Docker & Kubernetes
Lyon Studytrip - Microservices in Docker & KubernetesLyon Studytrip - Microservices in Docker & Kubernetes
Lyon Studytrip - Microservices in Docker & Kubernetes
 
Supersonic, Subatomic, Kubernetes native java
Supersonic, Subatomic, Kubernetes native javaSupersonic, Subatomic, Kubernetes native java
Supersonic, Subatomic, Kubernetes native java
 
Building Reusable Jenkins Pipelines - Yoram Michaeli - DevOpsDays Tel Aviv 2017
Building Reusable Jenkins Pipelines - Yoram Michaeli - DevOpsDays Tel Aviv 2017Building Reusable Jenkins Pipelines - Yoram Michaeli - DevOpsDays Tel Aviv 2017
Building Reusable Jenkins Pipelines - Yoram Michaeli - DevOpsDays Tel Aviv 2017
 
Docker + Tenserflow + GOlang - Golang singapore Meetup
Docker + Tenserflow + GOlang - Golang singapore MeetupDocker + Tenserflow + GOlang - Golang singapore Meetup
Docker + Tenserflow + GOlang - Golang singapore Meetup
 
JenkinsCI
JenkinsCIJenkinsCI
JenkinsCI
 
SCM (Source Control Management) - Git Basic
SCM (Source Control Management) - Git Basic SCM (Source Control Management) - Git Basic
SCM (Source Control Management) - Git Basic
 
Scaling on Kubernetes
Scaling on KubernetesScaling on Kubernetes
Scaling on Kubernetes
 
Adopting containers and kubernetes in production
Adopting containers and kubernetes in productionAdopting containers and kubernetes in production
Adopting containers and kubernetes in production
 
Open source and cross platform .net
Open source and cross platform .netOpen source and cross platform .net
Open source and cross platform .net
 
K8s
K8sK8s
K8s
 
Kubernetes service with ha
Kubernetes service with haKubernetes service with ha
Kubernetes service with ha
 
KubeCon Europe 2017: Running Workloads in Kubernetes
KubeCon Europe 2017: Running Workloads in KubernetesKubeCon Europe 2017: Running Workloads in Kubernetes
KubeCon Europe 2017: Running Workloads in Kubernetes
 
Deploying to DigitalOcean With GitHub Actions
Deploying to DigitalOcean With GitHub ActionsDeploying to DigitalOcean With GitHub Actions
Deploying to DigitalOcean With GitHub Actions
 
Fission Introduction
Fission IntroductionFission Introduction
Fission Introduction
 

Similaire à Continuous delivery the nuts and bolts

ChinaNetCloud - Cloud Operations for Gaming - Tencent July 2014
ChinaNetCloud - Cloud Operations for Gaming - Tencent July 2014ChinaNetCloud - Cloud Operations for Gaming - Tencent July 2014
ChinaNetCloud - Cloud Operations for Gaming - Tencent July 2014
ChinaNetCloud
 
Puppet Camp Presentation 15
Puppet Camp Presentation 15Puppet Camp Presentation 15
Puppet Camp Presentation 15
Dejan Golja
 

Similaire à Continuous delivery the nuts and bolts (20)

Cloud Native CI/CD with GitOps
Cloud Native CI/CD with GitOpsCloud Native CI/CD with GitOps
Cloud Native CI/CD with GitOps
 
Real-time Code Sharing Service for one-to-many coding classes
Real-time Code Sharing Service for one-to-many coding classesReal-time Code Sharing Service for one-to-many coding classes
Real-time Code Sharing Service for one-to-many coding classes
 
Syntergy upgrade open text content server with replicator - 7-3-2016
Syntergy   upgrade open text content server with replicator - 7-3-2016Syntergy   upgrade open text content server with replicator - 7-3-2016
Syntergy upgrade open text content server with replicator - 7-3-2016
 
How to Scale Operations for a Multi-Cloud Platform using PCF
How to Scale Operations for a Multi-Cloud Platform using PCFHow to Scale Operations for a Multi-Cloud Platform using PCF
How to Scale Operations for a Multi-Cloud Platform using PCF
 
Scaling jenkins with kubernetes
Scaling jenkins with kubernetesScaling jenkins with kubernetes
Scaling jenkins with kubernetes
 
ChinaNetCloud - Cloud Operations for Gaming - Tencent July 2014
ChinaNetCloud - Cloud Operations for Gaming - Tencent July 2014ChinaNetCloud - Cloud Operations for Gaming - Tencent July 2014
ChinaNetCloud - Cloud Operations for Gaming - Tencent July 2014
 
Jenkins as a Service
Jenkins as a ServiceJenkins as a Service
Jenkins as a Service
 
OpenStack @ Workday - CI/CD
OpenStack @ Workday - CI/CDOpenStack @ Workday - CI/CD
OpenStack @ Workday - CI/CD
 
Continuous deployment-at-flipkart
Continuous deployment-at-flipkartContinuous deployment-at-flipkart
Continuous deployment-at-flipkart
 
Docker: Testing to Production
Docker: Testing to ProductionDocker: Testing to Production
Docker: Testing to Production
 
Enabling Hybrid Workflows with Docker/Mesos @Orbitz
Enabling Hybrid Workflows with Docker/Mesos @OrbitzEnabling Hybrid Workflows with Docker/Mesos @Orbitz
Enabling Hybrid Workflows with Docker/Mesos @Orbitz
 
2016 - Easing Your Way Into Docker: Lessons From a Journey to Production
2016 - Easing Your Way Into Docker: Lessons From a Journey to Production2016 - Easing Your Way Into Docker: Lessons From a Journey to Production
2016 - Easing Your Way Into Docker: Lessons From a Journey to Production
 
Why everyone is excited about Docker (and you should too...) - Carlo Bonamic...
Why everyone is excited about Docker (and you should too...) -  Carlo Bonamic...Why everyone is excited about Docker (and you should too...) -  Carlo Bonamic...
Why everyone is excited about Docker (and you should too...) - Carlo Bonamic...
 
Puppet Camp Boston 2014: Continuous Integration for Hyper-V with Puppet (Begi...
Puppet Camp Boston 2014: Continuous Integration for Hyper-V with Puppet (Begi...Puppet Camp Boston 2014: Continuous Integration for Hyper-V with Puppet (Begi...
Puppet Camp Boston 2014: Continuous Integration for Hyper-V with Puppet (Begi...
 
Puppet Camp Presentation 15
Puppet Camp Presentation 15Puppet Camp Presentation 15
Puppet Camp Presentation 15
 
Intro to kubernetes
Intro to kubernetesIntro to kubernetes
Intro to kubernetes
 
Live Container Migration: OpenStack Summit Barcelona 2016
Live Container Migration: OpenStack Summit Barcelona 2016Live Container Migration: OpenStack Summit Barcelona 2016
Live Container Migration: OpenStack Summit Barcelona 2016
 
Pipeline as code - new feature in Jenkins 2
Pipeline as code - new feature in Jenkins 2Pipeline as code - new feature in Jenkins 2
Pipeline as code - new feature in Jenkins 2
 
Nantes Jug 2016 Eclipse Che: The Next-Gen Eclipse IDE
Nantes Jug 2016 Eclipse Che: The Next-Gen Eclipse IDENantes Jug 2016 Eclipse Che: The Next-Gen Eclipse IDE
Nantes Jug 2016 Eclipse Che: The Next-Gen Eclipse IDE
 
Getting to push_button_deploys
Getting to push_button_deploysGetting to push_button_deploys
Getting to push_button_deploys
 

Dernier

+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
Health
 

Dernier (20)

Microsoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdfMicrosoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdf
 
%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand
 
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdfAzure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
 
Define the academic and professional writing..pdf
Define the academic and professional writing..pdfDefine the academic and professional writing..pdf
Define the academic and professional writing..pdf
 
Pharm-D Biostatistics and Research methodology
Pharm-D Biostatistics and Research methodologyPharm-D Biostatistics and Research methodology
Pharm-D Biostatistics and Research methodology
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation Template
 
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) SolutionIntroducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial Goals
 
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdfPayment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
 
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
 
Exploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdfExploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdf
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docx
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
ManageIQ - Sprint 236 Review - Slide Deck
ManageIQ - Sprint 236 Review - Slide DeckManageIQ - Sprint 236 Review - Slide Deck
ManageIQ - Sprint 236 Review - Slide Deck
 

Continuous delivery the nuts and bolts

  • 1. Continuous Delivery the nuts and bolts BRINGING IT TO WOOLWORTHS
  • 2. The Past…  Deployments - last minute - others got to play TT  Folders  Databases including rollback scripts  Web.Config!  Release notes  Pain for everyone  Deployment time measured in hours and repeated for each environment
  • 3. Present aka the pipeline  Deployments - automated  Folders use MSBuild  Transforms use msbuild  Database use Fluent Migrations  Release Notes use PowerShell script with team city API  Deployment time from build to TEST environment WW ~10 minutes
  • 4. Implementation of pipeline  Came out of retrospective which highlighted issues with current deployment processes  Got 1 week sprint in mid Feb  Completed MS build scripts  Integrated FluentMigrator  Created packages to be consumed by Octopus Deploy
  • 5. FTW  Allowed us to fail fast  Release to production cadence increased  Moved away from big mono lithic releases
  • 6. Reuben’s Buckets  A build bucket  Stuff for the build aka state  A release bucket  Environment
  • 7. Build components  TFS build was complex  Can test MSBuild scripts locally  Code reuse  Release Notes  Tests, CI, Catch migrations issues
  • 8. Release  All the cool kids were using it  Great visibility of version in specific environment  Great for providing structure to automate releases  Has API to further  Code reuse  .Net focused  Transforms now live here  Is more suited for release where you own the metal