SlideShare ist ein Scribd-Unternehmen logo
1 von 35
Using DevOps Tools to Achieve
Continuous Integration
2RACKSPACEĀ® HOSTING | WWW.RACKSPACE.COM
Speakers
Kyle Kelley
Developer Support Engineer
@rgbkrk
2
Ryan Richard, RHCA
DevOps Automation Team
Lead
@rackninja
3RACKSPACEĀ® HOSTING | WWW.RACKSPACE.COM 3
First, a precursor
4RACKSPACEĀ® HOSTING | WWW.RACKSPACE.COM
Why are we here?
ā€¢We are all building up similar systems
ā€¢Similar configurations, minor tweaks
ā€¢Want:
ā€¢More time for applications and business
ā€¢Less time doing SysOps
5RACKSPACEĀ® HOSTING | WWW.RACKSPACE.COM
Keep Deploying!
ā€¢Letā€™s keep that product going
ā€¢Letā€™s keep delivering!
6RACKSPACEĀ® HOSTING | WWW.RACKSPACE.COM
What can we do?
ā€¢Write tests
ā€¢Use Continuous Integration
ā€¢Use version control, particularly git
7RACKSPACEĀ® HOSTING | WWW.RACKSPACE.COM
Letā€™s Test!
8RACKSPACEĀ® HOSTING | WWW.RACKSPACE.COM
RACKSPACEĀ® HOSTING | WWW.RACKSPACE.COMRACKSPACEĀ® HOSTING | WWW.RACKSPACE.COM
10RACKSPACEĀ® HOSTING | WWW.RACKSPACE.COM
Object Placeholder
Downtime
ā€¢Itā€™s going to happen
ā€¢Assume failure
ā€¢Have a rollback strategy
-for your application
11
Testing with Open Source Tools
RACKSPACEĀ® HOSTING | WWW.RACKSPACE.COMRACKSPACEĀ® HOSTING | WWW.RACKSPACE.COM 12RACKSPACEĀ® HOSTING | WWW.RACKSPACE.COM
13RACKSPACEĀ® HOSTING | WWW.RACKSPACE.COMRACKSPACEĀ® HOSTING | WWW.RACKSPACE.COMRACKSPACEĀ® HOSTING | WWW.RACKSPACE.COM
Minimal .travis.yml
language: python
python:
ā€“ ā€œ2.6ā€
ā€“ ā€œ2.7ā€
ā€“ ā€œ3.2ā€
ā€“ ā€œ3.3ā€
# install dependencies
install: ā€œpip install .ā€
# run tests
script: nosetests
14RACKSPACEĀ® HOSTING | WWW.RACKSPACE.COMRACKSPACEĀ® HOSTING | WWW.RACKSPACE.COMRACKSPACEĀ® HOSTING | WWW.RACKSPACE.COM 17RACKSPACEĀ® HOSTING | WWW.RACKSPACE.COM 17RACKSPACEĀ® HOSTING | WWW.RACKSPACE.COM
15
Need more build power?
17RACKSPACEĀ® HOSTING | WWW.RACKSPACE.COM 17
How the DevOps Automation
Service tests our cookbooks
18RACKSPACEĀ® HOSTING | WWW.RACKSPACE.COM
Practical examples with Chef
ā€¢Our pipeline for testing
cookbooks
ā€¢Testing your chef powered
infrastructure
Our CI pipeline for Chef cookbooks
CI serverJenkins
Our CI pipeline for Chef cookbooks
CI serverJenkins
WorkflowRake
Our CI pipeline for Chef cookbooks
CI serverJenkins
WorkflowRake
Ruby Syntax/lint
Our CI pipeline for Chef cookbooks
CI serverJenkins
WorkflowRake
Ruby Syntax/lint
Chef Syntax/lintFoodcritic
Our CI pipeline for Chef cookbooks
CI serverJenkins
WorkflowRake
Ruby Syntax/lint
Chef Syntax/lintFoodcritic
Unit testChefspec
Our CI pipeline for Chef cookbooks
CI serverJenkins
WorkflowRake
Ruby Syntax/lint
Chef Syntax/lintFoodcritic
Unit testChefspec
Functional tests
Test-kitchen + serverspec
Our CI pipeline for Chef cookbooks
CI serverJenkins
WorkflowRake
Ruby Syntax/lint
Chef Syntax/lintFoodcritic
Unit testChefspec
Functional tests
Test-kitchen + serverspec
Thor
Human/automated
Post Steps
Final
26RACKSPACEĀ® HOSTING | WWW.RACKSPACE.COM
Two modes of application delivery
Webhook Cookbook
Python MongoSupervisord
ā€¢ Build an application cookbook that can deploy latest
version of the application/artifact (chef specific)
27RACKSPACEĀ® HOSTING | WWW.RACKSPACE.COM
Two modes of application delivery
Webhook Cookbook
Python MongoSupervisord
ā€¢ Build an application cookbook that can deploy latest
version of the application/artifact (chef specific)
ā€¢ External workflow for application delivery
ā€¢ (Capistrano, fabric, etc).
Application Cookbook Workflow
CI serverJenkins
WorkflowRake
Ruby Syntax/lint
Chef Syntax/lintFoodcritic
Unit testChefspec
Application Cookbook Workflow
CI serverJenkins
WorkflowRake
Ruby Syntax/lint
Chef Syntax/lintFoodcritic
Unit testChefspec
Functional tests
Test-kitchen + serverspec
Do not destroy instance
Application Cookbook Workflow
CI serverJenkins
WorkflowRake
Ruby Syntax/lint
Chef Syntax/lintFoodcritic
Unit testChefspec
Functional tests
Test-kitchen + serverspec
Do not destroy instance
Jenkins steps or additional jobs:
Integration tests, load tests, user tests, etc
Human/automated
Post Steps
Final
Deployment Workflow Model
CI serverJenkins
Chef Workflow
Test-kitchen + serverspec
Do not destroy instance
Deployment Workflow Model
CI serverJenkins
Chef Workflow
Test-kitchen + serverspec
Do not destroy instance
Additional JobsDeployment workflow executed
Deployment Workflow Model
CI serverJenkins
Chef Workflow
Test-kitchen + serverspec
Do not destroy instance
Additional JobsDeployment workflow executed
Integration tests, load tests, user tests, etc. Additional Jobs
Deployment Workflow Model
CI serverJenkins
Chef Workflow
FinalHuman/automated
Test-kitchen + serverspec
Do not destroy instance
Additional JobsDeployment workflow executed
Integration tests, load tests, user tests, etc. Additional Jobs
RACKSPACEĀ® HOSTING | 1 FANATICAL PLACE | SAN ANTONIO, TX 78218
US SALES: 1-800-961-2888 | US SUPPORT: 1-800-961-4454 | WWW.RACKSPACE.COM
RACKSPACEĀ® HOSTING | Ā© RACKSPACE US, INC. | RACKSPACEĀ® AND FANATICAL SUPPORTĀ® ARE SERVICE MARKS OF RACKSPACE US, INC. REGISTERED IN THE UNITED STATES AND OTHER COUNTRIES. | WWW.RACKSPACE.COMRACKSPACEĀ® HOSTING | Ā© RACKSPACE US, INC. | RACKSPACEĀ® AND FANATICAL SUPPORTĀ® ARE SERVICE MARKS OF RACKSPACE US, INC. REGISTERED IN THE UNITED STATES AND OTHER COUNTRIES. | WWW.RACKSPACE.COM

Weitere Ƥhnliche Inhalte

Mehr von Rackspace

Mehr von Rackspace (20)

How Startups can leverage big data?
How Startups can leverage big data?How Startups can leverage big data?
How Startups can leverage big data?
Ā 
Become an IT Service Broker
Become an IT Service BrokerBecome an IT Service Broker
Become an IT Service Broker
Ā 
Deploy Apache Sparkā„¢ on Rackspace OnMetalā„¢ for Cloud Big Data Platform
Deploy Apache Sparkā„¢ on Rackspace OnMetalā„¢ for Cloud Big Data PlatformDeploy Apache Sparkā„¢ on Rackspace OnMetalā„¢ for Cloud Big Data Platform
Deploy Apache Sparkā„¢ on Rackspace OnMetalā„¢ for Cloud Big Data Platform
Ā 
Rethinking People Costs in Enterprise IT
Rethinking People Costs in Enterprise ITRethinking People Costs in Enterprise IT
Rethinking People Costs in Enterprise IT
Ā 
Starting the Journey to Managed Infrastructure Services
Starting the Journey to Managed Infrastructure ServicesStarting the Journey to Managed Infrastructure Services
Starting the Journey to Managed Infrastructure Services
Ā 
Rackspace::Solve NYC - Solving for Rapid Customer Growth and Scale Through De...
Rackspace::Solve NYC - Solving for Rapid Customer Growth and Scale Through De...Rackspace::Solve NYC - Solving for Rapid Customer Growth and Scale Through De...
Rackspace::Solve NYC - Solving for Rapid Customer Growth and Scale Through De...
Ā 
Rackspace::Solve NYC - Solving for Rapid Customer Growth and Scale Through De...
Rackspace::Solve NYC - Solving for Rapid Customer Growth and Scale Through De...Rackspace::Solve NYC - Solving for Rapid Customer Growth and Scale Through De...
Rackspace::Solve NYC - Solving for Rapid Customer Growth and Scale Through De...
Ā 
Rackspace::Solve NYC - The Future of Applications with Ken Cochrane, Engineer...
Rackspace::Solve NYC - The Future of Applications with Ken Cochrane, Engineer...Rackspace::Solve NYC - The Future of Applications with Ken Cochrane, Engineer...
Rackspace::Solve NYC - The Future of Applications with Ken Cochrane, Engineer...
Ā 
vCenter Site Recovery Manager: Architecting a DR Solution
vCenter Site Recovery Manager: Architecting a DR SolutionvCenter Site Recovery Manager: Architecting a DR Solution
vCenter Site Recovery Manager: Architecting a DR Solution
Ā 
Outsourcing IT Projects to Managed Hosting of the Cloud
Outsourcing IT Projects to Managed Hosting of the CloudOutsourcing IT Projects to Managed Hosting of the Cloud
Outsourcing IT Projects to Managed Hosting of the Cloud
Ā 
How to Bring Shadow IT to the Light
How to Bring Shadow IT to the LightHow to Bring Shadow IT to the Light
How to Bring Shadow IT to the Light
Ā 
DR-to-the-Cloud Best Practices
DR-to-the-Cloud Best PracticesDR-to-the-Cloud Best Practices
DR-to-the-Cloud Best Practices
Ā 
Migrating Traditional Apps from On-Premises to the Hybrid Cloud
Migrating Traditional Apps from On-Premises to the Hybrid CloudMigrating Traditional Apps from On-Premises to the Hybrid Cloud
Migrating Traditional Apps from On-Premises to the Hybrid Cloud
Ā 
Rackspace::Solve SFO - CoreOS CEO Alex Polvi on Solving for What's Next
Rackspace::Solve SFO - CoreOS CEO Alex Polvi on Solving for What's NextRackspace::Solve SFO - CoreOS CEO Alex Polvi on Solving for What's Next
Rackspace::Solve SFO - CoreOS CEO Alex Polvi on Solving for What's Next
Ā 
Rackspace::Solve SFO - Rackspace CEO Taylor Rhodes on the Power of Solving Pr...
Rackspace::Solve SFO - Rackspace CEO Taylor Rhodes on the Power of Solving Pr...Rackspace::Solve SFO - Rackspace CEO Taylor Rhodes on the Power of Solving Pr...
Rackspace::Solve SFO - Rackspace CEO Taylor Rhodes on the Power of Solving Pr...
Ā 
Rackspace::Solve SFO - Solving for the Coming Tidal Wave of Choices with Avai...
Rackspace::Solve SFO - Solving for the Coming Tidal Wave of Choices with Avai...Rackspace::Solve SFO - Solving for the Coming Tidal Wave of Choices with Avai...
Rackspace::Solve SFO - Solving for the Coming Tidal Wave of Choices with Avai...
Ā 
vSphere with Openstack
vSphere with OpenstackvSphere with Openstack
vSphere with Openstack
Ā 
Rackspace::Solve SFO - Solve(Scale) Featuring Docker CEO Ben Golub
Rackspace::Solve SFO - Solve(Scale) Featuring Docker CEO Ben GolubRackspace::Solve SFO - Solve(Scale) Featuring Docker CEO Ben Golub
Rackspace::Solve SFO - Solve(Scale) Featuring Docker CEO Ben Golub
Ā 
Rackspace::Solve SFO - Welcome Keynote featuring Rackspace CTO John Engates
Rackspace::Solve SFO - Welcome Keynote featuring Rackspace CTO John EngatesRackspace::Solve SFO - Welcome Keynote featuring Rackspace CTO John Engates
Rackspace::Solve SFO - Welcome Keynote featuring Rackspace CTO John Engates
Ā 
vSphere with OpenStack
vSphere with OpenStackvSphere with OpenStack
vSphere with OpenStack
Ā 

KĆ¼rzlich hochgeladen

Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Victor Rentea
Ā 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
Ā 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
Ā 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
Christopher Logan Kennedy
Ā 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
Ā 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(ā˜Žļø+971_581248768%)**%*]'#abortion pills for sale in dubai@
Ā 

KĆ¼rzlich hochgeladen (20)

How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
Ā 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Ā 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
Ā 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Ā 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Ā 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
Ā 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Ā 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
Ā 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
Ā 
Mcleodganj Call Girls šŸ„° 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls šŸ„° 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls šŸ„° 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls šŸ„° 8617370543 Service Offer VIP Hot Model
Ā 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
Ā 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Ā 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
Ā 
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
Ā 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Ā 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Ā 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
Ā 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
Ā 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
Ā 
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
Ā 

Using DevOps Tools to Achieve Continuous Integration

  • 1. Using DevOps Tools to Achieve Continuous Integration
  • 2. 2RACKSPACEĀ® HOSTING | WWW.RACKSPACE.COM Speakers Kyle Kelley Developer Support Engineer @rgbkrk 2 Ryan Richard, RHCA DevOps Automation Team Lead @rackninja
  • 3. 3RACKSPACEĀ® HOSTING | WWW.RACKSPACE.COM 3 First, a precursor
  • 4. 4RACKSPACEĀ® HOSTING | WWW.RACKSPACE.COM Why are we here? ā€¢We are all building up similar systems ā€¢Similar configurations, minor tweaks ā€¢Want: ā€¢More time for applications and business ā€¢Less time doing SysOps
  • 5. 5RACKSPACEĀ® HOSTING | WWW.RACKSPACE.COM Keep Deploying! ā€¢Letā€™s keep that product going ā€¢Letā€™s keep delivering!
  • 6. 6RACKSPACEĀ® HOSTING | WWW.RACKSPACE.COM What can we do? ā€¢Write tests ā€¢Use Continuous Integration ā€¢Use version control, particularly git
  • 7. 7RACKSPACEĀ® HOSTING | WWW.RACKSPACE.COM Letā€™s Test!
  • 8. 8RACKSPACEĀ® HOSTING | WWW.RACKSPACE.COM
  • 9. RACKSPACEĀ® HOSTING | WWW.RACKSPACE.COMRACKSPACEĀ® HOSTING | WWW.RACKSPACE.COM
  • 10. 10RACKSPACEĀ® HOSTING | WWW.RACKSPACE.COM Object Placeholder Downtime ā€¢Itā€™s going to happen ā€¢Assume failure ā€¢Have a rollback strategy -for your application
  • 11. 11 Testing with Open Source Tools
  • 12. RACKSPACEĀ® HOSTING | WWW.RACKSPACE.COMRACKSPACEĀ® HOSTING | WWW.RACKSPACE.COM 12RACKSPACEĀ® HOSTING | WWW.RACKSPACE.COM
  • 13. 13RACKSPACEĀ® HOSTING | WWW.RACKSPACE.COMRACKSPACEĀ® HOSTING | WWW.RACKSPACE.COMRACKSPACEĀ® HOSTING | WWW.RACKSPACE.COM Minimal .travis.yml language: python python: ā€“ ā€œ2.6ā€ ā€“ ā€œ2.7ā€ ā€“ ā€œ3.2ā€ ā€“ ā€œ3.3ā€ # install dependencies install: ā€œpip install .ā€ # run tests script: nosetests
  • 14. 14RACKSPACEĀ® HOSTING | WWW.RACKSPACE.COMRACKSPACEĀ® HOSTING | WWW.RACKSPACE.COMRACKSPACEĀ® HOSTING | WWW.RACKSPACE.COM 17RACKSPACEĀ® HOSTING | WWW.RACKSPACE.COM 17RACKSPACEĀ® HOSTING | WWW.RACKSPACE.COM
  • 16.
  • 17. 17RACKSPACEĀ® HOSTING | WWW.RACKSPACE.COM 17 How the DevOps Automation Service tests our cookbooks
  • 18. 18RACKSPACEĀ® HOSTING | WWW.RACKSPACE.COM Practical examples with Chef ā€¢Our pipeline for testing cookbooks ā€¢Testing your chef powered infrastructure
  • 19. Our CI pipeline for Chef cookbooks CI serverJenkins
  • 20. Our CI pipeline for Chef cookbooks CI serverJenkins WorkflowRake
  • 21. Our CI pipeline for Chef cookbooks CI serverJenkins WorkflowRake Ruby Syntax/lint
  • 22. Our CI pipeline for Chef cookbooks CI serverJenkins WorkflowRake Ruby Syntax/lint Chef Syntax/lintFoodcritic
  • 23. Our CI pipeline for Chef cookbooks CI serverJenkins WorkflowRake Ruby Syntax/lint Chef Syntax/lintFoodcritic Unit testChefspec
  • 24. Our CI pipeline for Chef cookbooks CI serverJenkins WorkflowRake Ruby Syntax/lint Chef Syntax/lintFoodcritic Unit testChefspec Functional tests Test-kitchen + serverspec
  • 25. Our CI pipeline for Chef cookbooks CI serverJenkins WorkflowRake Ruby Syntax/lint Chef Syntax/lintFoodcritic Unit testChefspec Functional tests Test-kitchen + serverspec Thor Human/automated Post Steps Final
  • 26. 26RACKSPACEĀ® HOSTING | WWW.RACKSPACE.COM Two modes of application delivery Webhook Cookbook Python MongoSupervisord ā€¢ Build an application cookbook that can deploy latest version of the application/artifact (chef specific)
  • 27. 27RACKSPACEĀ® HOSTING | WWW.RACKSPACE.COM Two modes of application delivery Webhook Cookbook Python MongoSupervisord ā€¢ Build an application cookbook that can deploy latest version of the application/artifact (chef specific) ā€¢ External workflow for application delivery ā€¢ (Capistrano, fabric, etc).
  • 28. Application Cookbook Workflow CI serverJenkins WorkflowRake Ruby Syntax/lint Chef Syntax/lintFoodcritic Unit testChefspec
  • 29. Application Cookbook Workflow CI serverJenkins WorkflowRake Ruby Syntax/lint Chef Syntax/lintFoodcritic Unit testChefspec Functional tests Test-kitchen + serverspec Do not destroy instance
  • 30. Application Cookbook Workflow CI serverJenkins WorkflowRake Ruby Syntax/lint Chef Syntax/lintFoodcritic Unit testChefspec Functional tests Test-kitchen + serverspec Do not destroy instance Jenkins steps or additional jobs: Integration tests, load tests, user tests, etc Human/automated Post Steps Final
  • 31. Deployment Workflow Model CI serverJenkins Chef Workflow Test-kitchen + serverspec Do not destroy instance
  • 32. Deployment Workflow Model CI serverJenkins Chef Workflow Test-kitchen + serverspec Do not destroy instance Additional JobsDeployment workflow executed
  • 33. Deployment Workflow Model CI serverJenkins Chef Workflow Test-kitchen + serverspec Do not destroy instance Additional JobsDeployment workflow executed Integration tests, load tests, user tests, etc. Additional Jobs
  • 34. Deployment Workflow Model CI serverJenkins Chef Workflow FinalHuman/automated Test-kitchen + serverspec Do not destroy instance Additional JobsDeployment workflow executed Integration tests, load tests, user tests, etc. Additional Jobs
  • 35. RACKSPACEĀ® HOSTING | 1 FANATICAL PLACE | SAN ANTONIO, TX 78218 US SALES: 1-800-961-2888 | US SUPPORT: 1-800-961-4454 | WWW.RACKSPACE.COM RACKSPACEĀ® HOSTING | Ā© RACKSPACE US, INC. | RACKSPACEĀ® AND FANATICAL SUPPORTĀ® ARE SERVICE MARKS OF RACKSPACE US, INC. REGISTERED IN THE UNITED STATES AND OTHER COUNTRIES. | WWW.RACKSPACE.COMRACKSPACEĀ® HOSTING | Ā© RACKSPACE US, INC. | RACKSPACEĀ® AND FANATICAL SUPPORTĀ® ARE SERVICE MARKS OF RACKSPACE US, INC. REGISTERED IN THE UNITED STATES AND OTHER COUNTRIES. | WWW.RACKSPACE.COM