SlideShare uma empresa Scribd logo
1 de 22
Beginners Guide To Continuous IntegrationTwitter: @stack72Email: public@paulstack.co.ukBlog: http://paulstack.co.uk/blog
Agenda What is Continuous Integration (CI)? Why should it be important to developers? What do I need to get started with CI? CI Tools What else can CI help me with?
Twitpoll of Deployment…. Thanks to Colin Gemmell for the poll results!
What is CI and where did it come from? Kent Beck first introduced it (1999 with birth of XP) Fowler took over the mantle in September 2000 “Continuous Integration is a software development practice where members of a team integrate their work frequently, usually …. daily - leading to multiple integrations per day. Each integration is verified by an automated build (including test) to detect integration errors as quickly as possible” – Martin Fowler, ThoughtWorks
What is CI and where did it come from? Kent Beck first introduced us (1999 with birth of XP) Fowler took over the mantle in September 2000 “Continuous Integration is a software development practice where members of a team integrate their work frequently, usually …. daily - leading to multiple integrations per day. Each integration is verified by an automated build (including test) to detect integration errors as quickly as possible” – Martin Fowler, ThoughtWorks Why has it evolved to be such a well known practice?
Why do I care about CI? “Initial Checkout” – where it all began for me  Benefits of CI reduced risk Bugs Potentially release faster
How do I get started…. Only takes 3 simple practices
1. Source Control Git Mercurial SVN TFS Clearcase CVS Perforce VSS etc.
2. Hardware Laptop VM Spare Development Machine Server CI server on local machine
3. CI Tool
Rolling their own…..
How do we choose a CI tool? Cost Configuration Easy of use Support Scalable Cool
Recap Time We: (Should) Already use Source Control Have decided which hardware to use Have chosen a CI tool Its possible to run a CI environment Easy Eh!
Simple steps to CI.. Make your build self building! Automate the build - nightly Keep the build fast Make Your Build Self-Testing Increase the frequency of builds Give instant feedback on builds
Demo…..
What else can CI help me do? Automate Code Documentation Code Coverage Reports Generate SQL Change scripts Automate deployment to staging / UAT Auto rollback
Summary We have looked at: What CI Is! Why its an important practice How to get initially started Some of the different build tools The potential of CI Tip – Get a mentor when starting out
Questions…..?? (Take it easy on me!)
Further Reading Continuous Integration by Paul Duvall – Amazon £18 Continuous Delivery by Jez Humble – Amazon £31 Continuous Integration in .Net – Manning.com £22
Thanks!  Twitter: @stack72 Email: public@paulstack.co.uk Blog: http://paulstack.co.uk/blog
Interested in CI Workshop? If you are interested in a CI workshop then please email me on events@paulstack.co.uk

Mais conteúdo relacionado

Mais procurados

Introduction To Continuous Integration
Introduction To Continuous IntegrationIntroduction To Continuous Integration
Introduction To Continuous Integration
Christopher Read
 
Using Continuous Integration To Ensure Project Health New
Using Continuous Integration To Ensure Project Health NewUsing Continuous Integration To Ensure Project Health New
Using Continuous Integration To Ensure Project Health New
bartlowe
 
The Hard Problems of Continuous Deployment
The Hard Problems of Continuous DeploymentThe Hard Problems of Continuous Deployment
The Hard Problems of Continuous Deployment
Timothy Fitz
 
Continuos integration patterns
Continuos integration patternsContinuos integration patterns
Continuos integration patterns
Vikas Gupta
 
Testing, CI and CD in the real world
Testing, CI and CD in the real worldTesting, CI and CD in the real world
Testing, CI and CD in the real world
Roc Boronat
 

Mais procurados (20)

Chapter 4
Chapter 4Chapter 4
Chapter 4
 
Continous Integration: A Case Study
Continous Integration: A Case StudyContinous Integration: A Case Study
Continous Integration: A Case Study
 
Continous integration
Continous integrationContinous integration
Continous integration
 
Introduction To Continuous Integration
Introduction To Continuous IntegrationIntroduction To Continuous Integration
Introduction To Continuous Integration
 
Using Continuous Integration To Ensure Project Health New
Using Continuous Integration To Ensure Project Health NewUsing Continuous Integration To Ensure Project Health New
Using Continuous Integration To Ensure Project Health New
 
How to deploy to production 10 times per day v2 for Levi9
How to deploy to production 10 times per day v2 for Levi9How to deploy to production 10 times per day v2 for Levi9
How to deploy to production 10 times per day v2 for Levi9
 
The Hard Problems of Continuous Deployment
The Hard Problems of Continuous DeploymentThe Hard Problems of Continuous Deployment
The Hard Problems of Continuous Deployment
 
Keeping Your CI/CD Pipeline as Fast as It Needs to Be
Keeping Your CI/CD Pipeline as Fast as It Needs to BeKeeping Your CI/CD Pipeline as Fast as It Needs to Be
Keeping Your CI/CD Pipeline as Fast as It Needs to Be
 
Continuous integration per le tue applicazioni mobile
Continuous integration per le tue applicazioni mobileContinuous integration per le tue applicazioni mobile
Continuous integration per le tue applicazioni mobile
 
Ci Basics & Jenkins
Ci Basics & JenkinsCi Basics & Jenkins
Ci Basics & Jenkins
 
Continuous Integration - What even is it?
Continuous Integration - What even is it?Continuous Integration - What even is it?
Continuous Integration - What even is it?
 
Build Infrastructure: What It Is and Why You Need It
Build Infrastructure: What It Is and Why You Need ItBuild Infrastructure: What It Is and Why You Need It
Build Infrastructure: What It Is and Why You Need It
 
Continuous Integration - Step by Step
Continuous Integration - Step by StepContinuous Integration - Step by Step
Continuous Integration - Step by Step
 
Continuos integration patterns
Continuos integration patternsContinuos integration patterns
Continuos integration patterns
 
continous integration and delivery
continous integration and deliverycontinous integration and delivery
continous integration and delivery
 
Continuous Integration and Builds
Continuous Integration and BuildsContinuous Integration and Builds
Continuous Integration and Builds
 
Continuous Integration at T3CON08
Continuous Integration at T3CON08Continuous Integration at T3CON08
Continuous Integration at T3CON08
 
Simple Continous Integration
Simple Continous IntegrationSimple Continous Integration
Simple Continous Integration
 
Continuous Integration using Buildbot
Continuous Integration using Buildbot Continuous Integration using Buildbot
Continuous Integration using Buildbot
 
Testing, CI and CD in the real world
Testing, CI and CD in the real worldTesting, CI and CD in the real world
Testing, CI and CD in the real world
 

Semelhante a Beginners Guide to CI

Buildbot introduction
Buildbot introductionBuildbot introduction
Buildbot introduction
williewu
 
Continuous Delivery concept overview. Continuous Integration Systems. DevOps ...
Continuous Delivery concept overview. Continuous Integration Systems. DevOps ...Continuous Delivery concept overview. Continuous Integration Systems. DevOps ...
Continuous Delivery concept overview. Continuous Integration Systems. DevOps ...
eleksdev
 

Semelhante a Beginners Guide to CI (20)

Dominik Veselý - Vše co jste kdy chtěli vědět o CI a báli jste se zeptat
Dominik Veselý - Vše co jste kdy chtěli vědět o CI a báli jste se zeptatDominik Veselý - Vše co jste kdy chtěli vědět o CI a báli jste se zeptat
Dominik Veselý - Vše co jste kdy chtěli vědět o CI a báli jste se zeptat
 
Continuous Integration
Continuous IntegrationContinuous Integration
Continuous Integration
 
Buildbot introduction
Buildbot introductionBuildbot introduction
Buildbot introduction
 
Buildbot
BuildbotBuildbot
Buildbot
 
Introducing Continuous Integration Using Vsts
Introducing Continuous Integration Using VstsIntroducing Continuous Integration Using Vsts
Introducing Continuous Integration Using Vsts
 
Intro to CI/CD using Docker
Intro to CI/CD using DockerIntro to CI/CD using Docker
Intro to CI/CD using Docker
 
Continuous integration 101
Continuous integration 101Continuous integration 101
Continuous integration 101
 
GDG DevFest Medan 2022
GDG DevFest Medan 2022GDG DevFest Medan 2022
GDG DevFest Medan 2022
 
DevOps - Understanding Core Concepts (Old)
DevOps - Understanding Core Concepts (Old)DevOps - Understanding Core Concepts (Old)
DevOps - Understanding Core Concepts (Old)
 
Continuous integration
Continuous integrationContinuous integration
Continuous integration
 
Introduction to Continuous Integration
Introduction to Continuous IntegrationIntroduction to Continuous Integration
Introduction to Continuous Integration
 
Continuous Integration: A Case Study
Continuous Integration: A Case StudyContinuous Integration: A Case Study
Continuous Integration: A Case Study
 
Continuous Integration vs Continuous Delivery vs Continuous Deployment
Continuous Integration vs Continuous Delivery vs Continuous Deployment Continuous Integration vs Continuous Delivery vs Continuous Deployment
Continuous Integration vs Continuous Delivery vs Continuous Deployment
 
Build your QA Pipeline using Serenity , Selenium WebDriver , Rest Assured and...
Build your QA Pipeline using Serenity , Selenium WebDriver , Rest Assured and...Build your QA Pipeline using Serenity , Selenium WebDriver , Rest Assured and...
Build your QA Pipeline using Serenity , Selenium WebDriver , Rest Assured and...
 
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 Delivery with VS2015 and TFS2015
Continuous Delivery with VS2015 and TFS2015Continuous Delivery with VS2015 and TFS2015
Continuous Delivery with VS2015 and TFS2015
 
Continuous Delivery concept overview. Continuous Integration Systems. DevOps ...
Continuous Delivery concept overview. Continuous Integration Systems. DevOps ...Continuous Delivery concept overview. Continuous Integration Systems. DevOps ...
Continuous Delivery concept overview. Continuous Integration Systems. DevOps ...
 
[Quang nguyen] Continuous Integration XP Day 2015 Vietnam Danang
[Quang nguyen] Continuous Integration XP Day 2015 Vietnam Danang[Quang nguyen] Continuous Integration XP Day 2015 Vietnam Danang
[Quang nguyen] Continuous Integration XP Day 2015 Vietnam Danang
 
DevOps - Understanding Core Concepts
DevOps - Understanding Core ConceptsDevOps - Understanding Core Concepts
DevOps - Understanding Core Concepts
 
Continuous integration - CI
Continuous integration - CIContinuous integration - CI
Continuous integration - CI
 

Mais de Paul Stack

Puppet powershell
Puppet powershellPuppet powershell
Puppet powershell
Paul Stack
 
Vagrant: The ability to create production environments from day 1 of development
Vagrant: The ability to create production environments from day 1 of developmentVagrant: The ability to create production environments from day 1 of development
Vagrant: The ability to create production environments from day 1 of development
Paul Stack
 
Windows: Having its ass kicked by Puppet and Powershell since 2012 #PuppetConf
Windows: Having its ass kicked by Puppet and Powershell since 2012 #PuppetConfWindows: Having its ass kicked by Puppet and Powershell since 2012 #PuppetConf
Windows: Having its ass kicked by Puppet and Powershell since 2012 #PuppetConf
Paul Stack
 
Windows: Having it's ass kicked by Puppet and PowerShell since 2012
Windows: Having it's ass kicked by Puppet and PowerShell since 2012Windows: Having it's ass kicked by Puppet and PowerShell since 2012
Windows: Having it's ass kicked by Puppet and PowerShell since 2012
Paul Stack
 
Spec flow – functional testing made easy
Spec flow – functional testing made easySpec flow – functional testing made easy
Spec flow – functional testing made easy
Paul Stack
 

Mais de Paul Stack (6)

Vagrant - the essence of DevOps in a tool
Vagrant - the essence of DevOps in a toolVagrant - the essence of DevOps in a tool
Vagrant - the essence of DevOps in a tool
 
Puppet powershell
Puppet powershellPuppet powershell
Puppet powershell
 
Vagrant: The ability to create production environments from day 1 of development
Vagrant: The ability to create production environments from day 1 of developmentVagrant: The ability to create production environments from day 1 of development
Vagrant: The ability to create production environments from day 1 of development
 
Windows: Having its ass kicked by Puppet and Powershell since 2012 #PuppetConf
Windows: Having its ass kicked by Puppet and Powershell since 2012 #PuppetConfWindows: Having its ass kicked by Puppet and Powershell since 2012 #PuppetConf
Windows: Having its ass kicked by Puppet and Powershell since 2012 #PuppetConf
 
Windows: Having it's ass kicked by Puppet and PowerShell since 2012
Windows: Having it's ass kicked by Puppet and PowerShell since 2012Windows: Having it's ass kicked by Puppet and PowerShell since 2012
Windows: Having it's ass kicked by Puppet and PowerShell since 2012
 
Spec flow – functional testing made easy
Spec flow – functional testing made easySpec flow – functional testing made easy
Spec flow – functional testing made easy
 

Último

CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
giselly40
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
Enterprise Knowledge
 

Último (20)

CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Evaluating the top large language models.pdf
Evaluating the top large language models.pdfEvaluating the top large language models.pdf
Evaluating the top large language models.pdf
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 

Beginners Guide to CI

  • 1. Beginners Guide To Continuous IntegrationTwitter: @stack72Email: public@paulstack.co.ukBlog: http://paulstack.co.uk/blog
  • 2. Agenda What is Continuous Integration (CI)? Why should it be important to developers? What do I need to get started with CI? CI Tools What else can CI help me with?
  • 3. Twitpoll of Deployment…. Thanks to Colin Gemmell for the poll results!
  • 4. What is CI and where did it come from? Kent Beck first introduced it (1999 with birth of XP) Fowler took over the mantle in September 2000 “Continuous Integration is a software development practice where members of a team integrate their work frequently, usually …. daily - leading to multiple integrations per day. Each integration is verified by an automated build (including test) to detect integration errors as quickly as possible” – Martin Fowler, ThoughtWorks
  • 5.
  • 6. What is CI and where did it come from? Kent Beck first introduced us (1999 with birth of XP) Fowler took over the mantle in September 2000 “Continuous Integration is a software development practice where members of a team integrate their work frequently, usually …. daily - leading to multiple integrations per day. Each integration is verified by an automated build (including test) to detect integration errors as quickly as possible” – Martin Fowler, ThoughtWorks Why has it evolved to be such a well known practice?
  • 7. Why do I care about CI? “Initial Checkout” – where it all began for me  Benefits of CI reduced risk Bugs Potentially release faster
  • 8. How do I get started…. Only takes 3 simple practices
  • 9. 1. Source Control Git Mercurial SVN TFS Clearcase CVS Perforce VSS etc.
  • 10. 2. Hardware Laptop VM Spare Development Machine Server CI server on local machine
  • 13. How do we choose a CI tool? Cost Configuration Easy of use Support Scalable Cool
  • 14. Recap Time We: (Should) Already use Source Control Have decided which hardware to use Have chosen a CI tool Its possible to run a CI environment Easy Eh!
  • 15. Simple steps to CI.. Make your build self building! Automate the build - nightly Keep the build fast Make Your Build Self-Testing Increase the frequency of builds Give instant feedback on builds
  • 17. What else can CI help me do? Automate Code Documentation Code Coverage Reports Generate SQL Change scripts Automate deployment to staging / UAT Auto rollback
  • 18. Summary We have looked at: What CI Is! Why its an important practice How to get initially started Some of the different build tools The potential of CI Tip – Get a mentor when starting out
  • 20. Further Reading Continuous Integration by Paul Duvall – Amazon £18 Continuous Delivery by Jez Humble – Amazon £31 Continuous Integration in .Net – Manning.com £22
  • 21. Thanks! Twitter: @stack72 Email: public@paulstack.co.uk Blog: http://paulstack.co.uk/blog
  • 22. Interested in CI Workshop? If you are interested in a CI workshop then please email me on events@paulstack.co.uk