SlideShare a Scribd company logo
1 of 44
Versioning schemes, branching models
Support your Continuous Delivery process
Continuous Delivery meetup, 18-05-2016
Triple, Alkmaar
Pavel Chunyayev
@PavelChunyayev
Amsterdam
Levi9 HQ
Amsterdam – 2005
25 people
Novi Sad
Serbia
Novi Sad – 2005
320+ people
Zrenjanin
Serbia
Zrenjanin– 2014
30+ people
Iasi
Romania
Iasi – 2007
80+ people
Kiev
Ukraine
Kiev – 2008
130+ people
@PavelChunyayev
Electronic
Retail
Digital
Marketing
Traffic and
Transport
Software
Services
@PavelChunyayev
Customer satisfaction 2015
• 4th year great results in Outsourcing Performance study
• 2015: 100% customer recommendation score
Excellent trust score
@PavelChunyayev
About me
• 12 years of IT experience
• Lived and worked in Ukraine and Estonia
• Moved a year and half ago to the Netherlands
• Love cycling
• Learn Dutch
• Alpe d’HuZes - http://deelnemers.opgevenisgeenoptie.nl/levi9
@PavelChunyayev
Continuous Delivery
@PavelChunyayev
Continuous Delivery
Incept
• Business idea
• Is needed
immediately
• Should be validated
Plan
• Refine
• Estimate
• Prioritize
Develop
• Put into sprint
• Develop in a branch
• Conduct a code
review
• Merge into master
Build
• Trigger pipeline
• Build
• Unit testing
• Integration testing
• Static code analysis
Test
• Contract testing
• E2E testing
• Security testing
• Resilience testing
Release
• Zero-downtime
• Canary testing
• Rolling deployment
• Blue / green
deployment
Operate
• Monitoring
• Validation of the
idea
• Money generation
• Disposal
@PavelChunyayev
Quality > Speed
@PavelChunyayev
Keep the product releasable
Build quality in
@PavelChunyayev
Build • Test • Release
@PavelChunyayev
Continuous Delivery
Incept
• Business idea
• Is needed
immediately
• Should be validated
Plan
• Refine
• Estimate
• Prioritize
Develop
• Put into sprint
• Develop in a branch
• Conduct a code
review
• Merge into master
Build
• Trigger pipeline
• Build
• Unit testing
• Integration testing
• Static code analysis
Test
• Contract testing
• E2E testing
• Security testing
• Resilience testing
Release
• Zero-downtime
• Canary testing
• Rolling deployment
• Blue / green
deployment
Operate
• Monitoring
• Validation of the
idea
• Money generation
• Disposal
@PavelChunyayev
@PavelChunyayev
@PavelChunyayev
@PavelChunyayev
@PavelChunyayev
@PavelChunyayev
Versioning
@PavelChunyayev
Versioning models
• Versioning SaaS vs installed applications
• Releases, bugfixes and hotfixes
• Numeric
• Date based
• Semantic versioning
• Marketing versions
@PavelChunyayev
Numeric
• Major.Minor
• Major.Minor.Patch
• Major.Minor.Patch.Build
• Major.Minor.Build
• Major.Minor.Build.Revision
• Major.Minor.Date
• 4.11, 5.2
• 5.2.1, 9.3.2
• 1.6.8.529
• 1.6.529
• 1.6.529.e91ba3
• 1.6.150518
@PavelChunyayev
Major.Minor
• -SNAPSHOT, -M1, -RC1, -RELEASE (.RELEASE)
• 1.0-SNAPSHOT
• 5.6-RC1
• 2.5.0-M2
• 5.2.1.RELEASE
@PavelChunyayev
How to change version?
• Software never reaching 1.0
• Rapidly increasing version
@PavelChunyayev
Date based
• Major.Minor.Date or just Date
• 2.5.201505181
• 0.2.2015051801
• 1.7.20150518001
• 1.0.201505181936
• 3.1.20150518193956
• 20150518194513
• 2015.05.18-19.46.15
@PavelChunyayev
Semantic versioning
• Major.minor.patch-prerelease+metadata
• 0.1.4-b45+d2e760
• 0.1.5-46
• 0.2.0-150518
• 0.2.1-prerelease+b538
• 1.0.0-alpha
• 1.3.9-beta
• 2.0.0
@PavelChunyayev
Semantic versioning
• Semver and continuous delivery
• Assigning a version before release or after?
• Enforcing the sequence of pull requests?
• Not really needed for SaaS
• Build number is an abuse of semantic versioning
• Backwards compartible change or not?
• Integrated application
• Collection of applications
@PavelChunyayev
Marketing version
• Whatever product management or marketing decide to call it
• 2016 Early
• 2016.5
• Ultra, Turbo, Extra, VIP, Premium, Free
• How often to release and how often to increase the version number?
@PavelChunyayev
How to generate and save version number
• In the source code
• External
• Date
• Build number
• Source control
• Bump up the version
• Before new feature or after new feature
• Manually vs script while commiting (hooks)
@PavelChunyayev
What to version?
• Your product
• Separate applications
• Libraries, building blocks and tools
• Public and private (internal versioning)
• Public (and private) API
• DB schemas
• Infrastructure configuration
@PavelChunyayev
Versioning things
• Embedded (meta information) vs filename
• Package the code and assign version to the packages
• Dependency management
• Latest
• Ranges
• Explicitly specified
@PavelChunyayev
Version of the product in
microservices world?
@PavelChunyayev
Updating the contract
@PavelChunyayev
Updating the contract
@PavelChunyayev
Updating the contract
@PavelChunyayev
Updating the contract
@PavelChunyayev
Updating the contract
@PavelChunyayev
Branching
@PavelChunyayev
Models
• SaaS vs installed
• Trunk-based
• Feature driven
• Release branches
• Git flow
• Open-source
@PavelChunyayev
Trunk based
@PavelChunyayev
Feature branching
@PavelChunyayev
Release branches
@PavelChunyayev
Gitflow
@PavelChunyayev
Open source model
@PavelChunyayev
Branching things
• Tagging
• Fork vs branching
• Pull requests (merge requests)
• Run tests
• Code review
@PavelChunyayev
Continuous Delivery
Incept
• Business idea
• Is needed
immediately
• Should be validated
Plan
• Refine
• Estimate
• Prioritize
Develop
• Put into sprint
• Develop in a branch
• Conduct a code
review
• Merge into master
Build
• Trigger pipeline
• Build
• Unit testing
• Integration testing
• Static code analysis
Test
• Contract testing
• E2E testing
• Security testing
• Resilience testing
Release
• Zero-downtime
• Canary testing
• Rolling deployment
• Blue / green
deployment
Operate
• Monitoring
• Validation of the
idea
• Money generation
• Disposal
Keep the product releasable
Build quality in
Version everything
Branch out when needed
@PavelChunyayev
Key takeaways
• Focus on quality, speed will come
• Quality has to be integral part of the process
• Version each artifact uniquely
• Select the branching model that supports
your product
• Integrate frequently
Any questions?
pavel@levi9.com

More Related Content

What's hot

O'Reilly Webcast: How Nordstrom Prepares Its Site for Holidays and Major Events
O'Reilly Webcast: How Nordstrom Prepares Its Site for Holidays and Major EventsO'Reilly Webcast: How Nordstrom Prepares Its Site for Holidays and Major Events
O'Reilly Webcast: How Nordstrom Prepares Its Site for Holidays and Major Events
SOASTA
 

What's hot (20)

Automated Page Composition - STM eProduction 2014
Automated Page Composition - STM eProduction 2014Automated Page Composition - STM eProduction 2014
Automated Page Composition - STM eProduction 2014
 
Quali webinar de-mystifyind dev_ops-a practitioner’s perspective
Quali webinar de-mystifyind dev_ops-a practitioner’s perspectiveQuali webinar de-mystifyind dev_ops-a practitioner’s perspective
Quali webinar de-mystifyind dev_ops-a practitioner’s perspective
 
QualiSystems-Brief TestShell
QualiSystems-Brief TestShellQualiSystems-Brief TestShell
QualiSystems-Brief TestShell
 
Building a Performance A-Team
Building a Performance A-TeamBuilding a Performance A-Team
Building a Performance A-Team
 
O'Reilly Webcast: How Nordstrom Prepares Its Site for Holidays and Major Events
O'Reilly Webcast: How Nordstrom Prepares Its Site for Holidays and Major EventsO'Reilly Webcast: How Nordstrom Prepares Its Site for Holidays and Major Events
O'Reilly Webcast: How Nordstrom Prepares Its Site for Holidays and Major Events
 
Ansible benelux meetup - Amsterdam 27-5-2015
Ansible benelux meetup - Amsterdam 27-5-2015Ansible benelux meetup - Amsterdam 27-5-2015
Ansible benelux meetup - Amsterdam 27-5-2015
 
VSTS Migration Briefing
VSTS Migration BriefingVSTS Migration Briefing
VSTS Migration Briefing
 
#ESPC18 How to do #devops with the #SharePoint Framework and why it matters?
#ESPC18 How to do #devops with the #SharePoint Framework and why it matters?#ESPC18 How to do #devops with the #SharePoint Framework and why it matters?
#ESPC18 How to do #devops with the #SharePoint Framework and why it matters?
 
JIRA Performance After 300,000 Issues
JIRA Performance After 300,000 IssuesJIRA Performance After 300,000 Issues
JIRA Performance After 300,000 Issues
 
Product Managers are from Pluto and UXers are from Uranus
Product Managers are from Pluto and UXers are from UranusProduct Managers are from Pluto and UXers are from Uranus
Product Managers are from Pluto and UXers are from Uranus
 
SPSOttawa Release Pipepline for SharePoint office 365 in Azure
SPSOttawa Release Pipepline for SharePoint office 365 in AzureSPSOttawa Release Pipepline for SharePoint office 365 in Azure
SPSOttawa Release Pipepline for SharePoint office 365 in Azure
 
QASymphony Atlanta Customer User Group Fall 2017
QASymphony Atlanta Customer User Group Fall 2017QASymphony Atlanta Customer User Group Fall 2017
QASymphony Atlanta Customer User Group Fall 2017
 
Sysco DK DevOps
Sysco DK DevOpsSysco DK DevOps
Sysco DK DevOps
 
Transforming Enterprise Release Management in Elastic Beanstalk using Jenkins...
Transforming Enterprise Release Management in Elastic Beanstalk using Jenkins...Transforming Enterprise Release Management in Elastic Beanstalk using Jenkins...
Transforming Enterprise Release Management in Elastic Beanstalk using Jenkins...
 
Service Virtualization - Kalpna
Service Virtualization - KalpnaService Virtualization - Kalpna
Service Virtualization - Kalpna
 
Continuous Delivery en Tools
Continuous Delivery en ToolsContinuous Delivery en Tools
Continuous Delivery en Tools
 
SPSNL17 - Be more effective with the PnP Provisioning Engine - Erwin van Hunen
SPSNL17 - Be more effective with the PnP Provisioning Engine - Erwin van HunenSPSNL17 - Be more effective with the PnP Provisioning Engine - Erwin van Hunen
SPSNL17 - Be more effective with the PnP Provisioning Engine - Erwin van Hunen
 
Software Architecture for DevOps and Continuous Delivery
Software Architecture for DevOps and Continuous DeliverySoftware Architecture for DevOps and Continuous Delivery
Software Architecture for DevOps and Continuous Delivery
 
VarnaConf - Blue/Green Deployments with Docker, haproxy and Consul
VarnaConf - Blue/Green Deployments with Docker, haproxy and ConsulVarnaConf - Blue/Green Deployments with Docker, haproxy and Consul
VarnaConf - Blue/Green Deployments with Docker, haproxy and Consul
 
Deployment Automation in de praktijk
Deployment Automation in de praktijkDeployment Automation in de praktijk
Deployment Automation in de praktijk
 

Viewers also liked

Top 10 Lessons Learned from the Netflix API - OSCON 2014
Top 10 Lessons Learned from the Netflix API - OSCON 2014Top 10 Lessons Learned from the Netflix API - OSCON 2014
Top 10 Lessons Learned from the Netflix API - OSCON 2014
Daniel Jacobson
 
Study of Performance and Compensation at Infosys Ltd.
Study of Performance and Compensation at Infosys Ltd.Study of Performance and Compensation at Infosys Ltd.
Study of Performance and Compensation at Infosys Ltd.
Hitaishi Gupta
 
Chapter 13 Variable Pay and Executive Compensation
Chapter 13 Variable Pay and Executive CompensationChapter 13 Variable Pay and Executive Compensation
Chapter 13 Variable Pay and Executive Compensation
Rayman Soe
 

Viewers also liked (20)

Redesigning the Netflix API - OSCON
Redesigning the Netflix API - OSCONRedesigning the Netflix API - OSCON
Redesigning the Netflix API - OSCON
 
Test Automation
Test AutomationTest Automation
Test Automation
 
Top 10 Lessons Learned from the Netflix API - OSCON 2014
Top 10 Lessons Learned from the Netflix API - OSCON 2014Top 10 Lessons Learned from the Netflix API - OSCON 2014
Top 10 Lessons Learned from the Netflix API - OSCON 2014
 
Next Generation Development Infrastructure with the Maven Enterprise Stack
Next Generation Development Infrastructure with the Maven Enterprise StackNext Generation Development Infrastructure with the Maven Enterprise Stack
Next Generation Development Infrastructure with the Maven Enterprise Stack
 
NuGet package CI and CD
NuGet package CI and CDNuGet package CI and CD
NuGet package CI and CD
 
Workshop empowering teams
Workshop empowering teamsWorkshop empowering teams
Workshop empowering teams
 
Understanding Kanban
Understanding KanbanUnderstanding Kanban
Understanding Kanban
 
IA & UX: Where Great Design Journeys Begin
IA & UX: Where Great Design Journeys BeginIA & UX: Where Great Design Journeys Begin
IA & UX: Where Great Design Journeys Begin
 
From Continuous Integration to Continuous Delivery and DevOps
From Continuous Integration to Continuous Delivery and DevOpsFrom Continuous Integration to Continuous Delivery and DevOps
From Continuous Integration to Continuous Delivery and DevOps
 
Microservices Development Process at Predix.io
Microservices Development Process at Predix.ioMicroservices Development Process at Predix.io
Microservices Development Process at Predix.io
 
How to Calculate Average First Reply Time
How to Calculate Average First Reply TimeHow to Calculate Average First Reply Time
How to Calculate Average First Reply Time
 
Study of Performance and Compensation at Infosys Ltd.
Study of Performance and Compensation at Infosys Ltd.Study of Performance and Compensation at Infosys Ltd.
Study of Performance and Compensation at Infosys Ltd.
 
What Is Customer Effort Score and How Do You Measure CES?
What Is Customer Effort Score and How Do You Measure CES?What Is Customer Effort Score and How Do You Measure CES?
What Is Customer Effort Score and How Do You Measure CES?
 
Chapter 13 Variable Pay and Executive Compensation
Chapter 13 Variable Pay and Executive CompensationChapter 13 Variable Pay and Executive Compensation
Chapter 13 Variable Pay and Executive Compensation
 
Personas Demystified 1.0
Personas Demystified 1.0Personas Demystified 1.0
Personas Demystified 1.0
 
How to Measure Net Promoter Score (NPS)
How to Measure Net Promoter Score (NPS)How to Measure Net Promoter Score (NPS)
How to Measure Net Promoter Score (NPS)
 
Behavior Driven Development
Behavior Driven DevelopmentBehavior Driven Development
Behavior Driven Development
 
Compensation practices
Compensation practicesCompensation practices
Compensation practices
 
Microservices: The Right Way
Microservices: The Right WayMicroservices: The Right Way
Microservices: The Right Way
 
Compensation & benefit presentation
Compensation & benefit presentation Compensation & benefit presentation
Compensation & benefit presentation
 

Similar to Versioning schemes and branching models for Continuous Delivery - Continuous Delivery meetup - Alkmaar, 18-05-2016

Similar to Versioning schemes and branching models for Continuous Delivery - Continuous Delivery meetup - Alkmaar, 18-05-2016 (20)

Extending Ansible - Ansible Benelux meetup - Amsterdam 11-02-2016
Extending Ansible - Ansible Benelux meetup - Amsterdam 11-02-2016Extending Ansible - Ansible Benelux meetup - Amsterdam 11-02-2016
Extending Ansible - Ansible Benelux meetup - Amsterdam 11-02-2016
 
Building Quality into Your DevSecOps Pipelines
Building Quality into Your DevSecOps PipelinesBuilding Quality into Your DevSecOps Pipelines
Building Quality into Your DevSecOps Pipelines
 
REALTECH SmartChange solutions ppt
REALTECH SmartChange solutions pptREALTECH SmartChange solutions ppt
REALTECH SmartChange solutions ppt
 
Beyond DevOps: How Netflix Bridges the Gap?
Beyond DevOps: How Netflix Bridges the Gap?Beyond DevOps: How Netflix Bridges the Gap?
Beyond DevOps: How Netflix Bridges the Gap?
 
Crowd Nidhi - Advanced quality assurance practice - v1.0 -2021
Crowd Nidhi - Advanced quality assurance practice - v1.0 -2021 Crowd Nidhi - Advanced quality assurance practice - v1.0 -2021
Crowd Nidhi - Advanced quality assurance practice - v1.0 -2021
 
SOASTA Webinar: Process Compression For Mobile App Dev 120612
SOASTA Webinar: Process Compression For Mobile App Dev 120612SOASTA Webinar: Process Compression For Mobile App Dev 120612
SOASTA Webinar: Process Compression For Mobile App Dev 120612
 
The API Lifecycle Series: Exploring Design-First and Code-First Approaches to...
The API Lifecycle Series: Exploring Design-First and Code-First Approaches to...The API Lifecycle Series: Exploring Design-First and Code-First Approaches to...
The API Lifecycle Series: Exploring Design-First and Code-First Approaches to...
 
Crowd Nidhi Advanced quality assurance practice - v1.0 -2021
Crowd Nidhi   Advanced quality assurance practice - v1.0 -2021 Crowd Nidhi   Advanced quality assurance practice - v1.0 -2021
Crowd Nidhi Advanced quality assurance practice - v1.0 -2021
 
DOES16 London - Darren Hague - SAP’s DevOps Journey: From Building an App to ...
DOES16 London - Darren Hague - SAP’s DevOps Journey: From Building an App to ...DOES16 London - Darren Hague - SAP’s DevOps Journey: From Building an App to ...
DOES16 London - Darren Hague - SAP’s DevOps Journey: From Building an App to ...
 
How SAS Institute Drove Digital Transformation Through DevOps - AppSphere16
How SAS Institute Drove Digital Transformation Through DevOps - AppSphere16How SAS Institute Drove Digital Transformation Through DevOps - AppSphere16
How SAS Institute Drove Digital Transformation Through DevOps - AppSphere16
 
Pivotal korea transformation_strategy_seminar_enterprise_dev_ops_20160630_v1.0
Pivotal korea transformation_strategy_seminar_enterprise_dev_ops_20160630_v1.0Pivotal korea transformation_strategy_seminar_enterprise_dev_ops_20160630_v1.0
Pivotal korea transformation_strategy_seminar_enterprise_dev_ops_20160630_v1.0
 
DevOps for Network Engineers
DevOps for Network EngineersDevOps for Network Engineers
DevOps for Network Engineers
 
Beyond DevOps - How Netflix Bridges the Gap
Beyond DevOps - How Netflix Bridges the GapBeyond DevOps - How Netflix Bridges the Gap
Beyond DevOps - How Netflix Bridges the Gap
 
WSO2Con USA 2015: WSO2 Cloud: What it is, How it Works, and Where it’s Going
WSO2Con USA 2015: WSO2 Cloud: What it is, How it Works, and Where it’s GoingWSO2Con USA 2015: WSO2 Cloud: What it is, How it Works, and Where it’s Going
WSO2Con USA 2015: WSO2 Cloud: What it is, How it Works, and Where it’s Going
 
Productionizing Data Science at Experience
Productionizing Data Science at ExperienceProductionizing Data Science at Experience
Productionizing Data Science at Experience
 
Analyzing the World's Largest Security Data Lake!
Analyzing the World's Largest Security Data Lake!Analyzing the World's Largest Security Data Lake!
Analyzing the World's Largest Security Data Lake!
 
The Journey to Devops: From Waterfall to Continuous Integration
The Journey to Devops: From Waterfall to Continuous IntegrationThe Journey to Devops: From Waterfall to Continuous Integration
The Journey to Devops: From Waterfall to Continuous Integration
 
Hanu Software- Overview
Hanu Software- OverviewHanu Software- Overview
Hanu Software- Overview
 
Out With the Old, in With the Open-source: Brainshark's Complete CMS Migration
Out With the Old, in With the Open-source: Brainshark's Complete CMS MigrationOut With the Old, in With the Open-source: Brainshark's Complete CMS Migration
Out With the Old, in With the Open-source: Brainshark's Complete CMS Migration
 
Cloud migration Through Automation
Cloud migration Through AutomationCloud migration Through Automation
Cloud migration Through Automation
 

Recently uploaded

The title is not connected to what is inside
The title is not connected to what is insideThe title is not connected to what is inside
The title is not connected to what is inside
shinachiaurasa2
 
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
9953056974 Low Rate Call Girls In Saket, Delhi NCR
 
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
masabamasaba
 
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfintroduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
VishalKumarJha10
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
mohitmore19
 

Recently uploaded (20)

The title is not connected to what is inside
The title is not connected to what is insideThe title is not connected to what is inside
The title is not connected to what is inside
 
Chinsurah Escorts ☎️8617697112 Starting From 5K to 15K High Profile Escorts ...
Chinsurah Escorts ☎️8617697112  Starting From 5K to 15K High Profile Escorts ...Chinsurah Escorts ☎️8617697112  Starting From 5K to 15K High Profile Escorts ...
Chinsurah Escorts ☎️8617697112 Starting From 5K to 15K High Profile Escorts ...
 
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
 
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
 
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 🔝✔️✔️
 
%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
 
%+27788225528 love spells in Vancouver Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Vancouver Psychic Readings, Attraction spells,Br...%+27788225528 love spells in Vancouver Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Vancouver Psychic Readings, Attraction spells,Br...
 
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park %in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
 
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
 
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
 
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
 
SHRMPro HRMS Software Solutions Presentation
SHRMPro HRMS Software Solutions PresentationSHRMPro HRMS Software Solutions Presentation
SHRMPro HRMS Software Solutions Presentation
 
Announcing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK SoftwareAnnouncing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK Software
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation Template
 
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfintroduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
 
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
 
8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
 

Versioning schemes and branching models for Continuous Delivery - Continuous Delivery meetup - Alkmaar, 18-05-2016

Editor's Notes

  1. Ideas come from all the sources. Questions are welcome. Disagreement is welcome, but after the talk.
  2. .
  3. .
  4. .
  5. .
  6. Not every feature is needed. Shorter and shorter release cycles => Release more software in less time.
  7. Can’t churn out. No manual testing.
  8. .
  9. .
  10. .
  11. Reproducible and repeatable process (including testing). Potentially shippable product -> Keeping the product releasable
  12. .
  13. Testing criteria. Run over and over again.
  14. .
  15. No DTAP. Immutable (testing framework?) TTL Docker Framework to allow restart - select arbitrary test
  16. Windows 95 vs 98 Web 2.0 Star Wars, Terminator BMW
  17. FreeBSD
  18. F: 2 years to reach 1.0 6 years to reach 4.0 Latest is Firefox 54 Chrome 1.0 -> 4 in 1 year (Chrome 52)
  19. .
  20. .
  21. .
  22. Marketing vs CD
  23. Infrastructure becomes integrated with application
  24. .
  25. .
  26. * Semantic or not semantic * API versioning - public or also internal? * Transition between versions – testing different versions * Running several versions together
  27. * Semantic or not semantic * API versioning - public or also internal? * Transition between versioning – testing different versions * Running several versions together
  28. * Semantic or not semantic * API versioning - public or also internal? * Transition between versioning – testing different versions * Running several versions together
  29. * Semantic or not semantic * API versioning - public or also internal? * Transition between versioning – testing different versions * Running several versions together
  30. * Semantic or not semantic * API versioning - public or also internal? * Transition between versioning – testing different versions * Running several versions together
  31. You have to collaborate and therefore to work along with different people on the same repository
  32. Ideal for CD Tricky to convince developers to try Tricky with multiple developers Tricky with multiple teams Tricky for installed software Possible with correct tooling
  33. Golden standard for git Branches are used for convenience Works if branches are short lived Pull frequently from master Or before merge Or automatically Merge commits
  34. Supports installed software Easy for bug- and hot-fixes Tricky to manage Requires a role of release engineer or manager Tags can replace branches If you don’t support then long
  35. Good and easy for installed software Manual release process Cherry picking Can be trickier to use with CI/CD Merge commits
  36. Fork Add upstream as remote Code Squash commits Open Pull Request Merge Or get your PR rejected :)