SlideShare uma empresa Scribd logo
1 de 20
Baixar para ler offline
Simple Release and Deploy
                Tool chain in Action




                        Alex Honor




Friday, June 25, 2010                    1
For DevOps need a way to let...

      Developers             Operations
 specify packages they   perform release and
  need in operations         deployment




Friday, June 25, 2010                          2
Need: Developers specify
  needed package versions...

                        Application Code
                        Application Configuration
                        Third Party Packages




Friday, June 25, 2010                               3
Need: Release manager* controls
    the release...

     Issue tracking status
     QA approval
     Change control scheduling
     Promotes the artifacts



   (*Person or Role)

Friday, June 25, 2010                 4
Need: Ops run deployment...

         Assess scheduling conflicts

         Decide how to batch updates

         Deploys packages




Friday, June 25, 2010                  5
Need: Managers want...

           Responsibility and boundaries

           Enforce process through authorization

           Audit and trace changes




Friday, June 25, 2010                              6
Need: Self service for everyone...
     Each role works independently

     Tools provide the self service interfaces




Friday, June 25, 2010                            7
Need: Keep it simple...

         Use freely available tools

         Reflect roles and process

         Is easy to understand at any level



                                  copy/
             check
                                  create
              out
                                   repo


                                            yum
                                           install

                        http /
                        query    Control
            Hudson               Center
            Console

                                                     App hosts
Friday, June 25, 2010                                            8
Tool: The “Meta” Package...

       Represents a coupled set of packages

       Based on RPM dependencies

       Spec just “Requires” statements


                                         Requires




Friday, June 25, 2010                               9
Tool: Yum Repository...


          Central storage and index

          Resolve and install package
          dependancies

          Allocate a repository to each
          application team

                                          app host




Friday, June 25, 2010                                10
Tool: Sources in SCM...

               RPM specification

               RPM build procedure

               Related files needed by release process

               Developers have commit access




Friday, June 25, 2010                                    11
Tool: CI job...

    Monitor .spec file checkins

    Run rpmbuild for the “meta package”

    Identify artifacts (RPMs)

    Devs modify / run job when desired




Friday, June 25, 2010                     12
Tool: Runbook Jobs...
    Promote
    Release Manager moves
    artifacts to Yum                                  Promote
                                                      Deploy
                                          Control
                                          Center        Jobs
    Deploy
    Ops Admin deploys                   Distributed

    packages to hosts
                                        command
                                         dispatch




                        Yum repo host                   App hosts




Friday, June 25, 2010                                               13
Process: Specify package needs...


                                           name: acme-rockets
                                           version: 1.0
                                           release: 0
                                           summary: The Acme Rockets app package set
                                           group: acme/rockets
                                           license: proprietary

                                           requires:   php >= 5.3.2
                                           requires:   php < 5.3.0
                                           requires:   acme-rockets = 1.2.3
                                           requires:   memcached = 1.4.5
                checkout/
                 checkin                   %description
                                           The Acme Rockets app package dependencies.
                                    edit
                                           %files
                                           # NONE

                          App              %changelog
                                           * Mon Jun 14 2010 Wiley Cayote <wc@acme.com> 1.0-0
                        Developer             - Initial spec file.




Friday, June 25, 2010                                                                           14
Process: CI Build
                                   checkin




                               App                     spec
                             Developer




                         Detects and
                         builds meta
                        package rpms     Hudson
                                         Console         Artifacts


                                                               REST call
                                             Query artifact
                                                 list

Friday, June 25, 2010                                                      15
Process: Promote



                                       REST query                       create repo




                                                              Control
                            Hudson                            Center
                            Console
                         Detects and                   Promote
                           builds
                        metapackages

                                                    run job



                                       Release manager



Friday, June 25, 2010                                                                 16
Process: Deploy




                                      yum install
                        Control
                        Center

                                  Deploy
                                                       app host


                                      run job



                                           Ops admin
Friday, June 25, 2010                                             17
Audit: Management traceability


                SCM revision to package version

                “Meta package” to required packages

                Package to host




Friday, June 25, 2010                                 18
Audit: Audit compliance

           SCM change log:
           Only devs can commit

           ControlCenter event log:
           Only releaser role can run Promote
           Only ops can run Deploy

           Yum:
           Only packages specified by devs should be
           in their team’s repository

Friday, June 25, 2010                                  19
Discuss ideas like this...

                        DevOps Tool chain Project




                http://google.com/group/devops-toolchain



Friday, June 25, 2010                                      20

Mais conteúdo relacionado

Mais procurados

Developing Selenium tests with JUnit 5
Developing Selenium tests with JUnit 5Developing Selenium tests with JUnit 5
Developing Selenium tests with JUnit 5Boni García
 
Docker - A lightweight Virtualization Platform for Developers
Docker - A lightweight Virtualization Platform for DevelopersDocker - A lightweight Virtualization Platform for Developers
Docker - A lightweight Virtualization Platform for DevelopersRapidValue
 
Labri 2021-invited-talk
Labri 2021-invited-talkLabri 2021-invited-talk
Labri 2021-invited-talkvschiavoni
 
An introduction to OSGi
An introduction to OSGi An introduction to OSGi
An introduction to OSGi Andrea Chiodoni
 
Migrating from HP QuickTest Pro QTP to TestMaker Object Designer
Migrating from HP QuickTest Pro QTP to TestMaker Object DesignerMigrating from HP QuickTest Pro QTP to TestMaker Object Designer
Migrating from HP QuickTest Pro QTP to TestMaker Object DesignerClever Moe
 
Unit Test con Embarcadero RAD Studio
Unit Test con Embarcadero RAD StudioUnit Test con Embarcadero RAD Studio
Unit Test con Embarcadero RAD StudioJuan Vladimir
 
Taming the Deployment Beast
Taming the Deployment BeastTaming the Deployment Beast
Taming the Deployment BeastChris Cornutt
 

Mais procurados (7)

Developing Selenium tests with JUnit 5
Developing Selenium tests with JUnit 5Developing Selenium tests with JUnit 5
Developing Selenium tests with JUnit 5
 
Docker - A lightweight Virtualization Platform for Developers
Docker - A lightweight Virtualization Platform for DevelopersDocker - A lightweight Virtualization Platform for Developers
Docker - A lightweight Virtualization Platform for Developers
 
Labri 2021-invited-talk
Labri 2021-invited-talkLabri 2021-invited-talk
Labri 2021-invited-talk
 
An introduction to OSGi
An introduction to OSGi An introduction to OSGi
An introduction to OSGi
 
Migrating from HP QuickTest Pro QTP to TestMaker Object Designer
Migrating from HP QuickTest Pro QTP to TestMaker Object DesignerMigrating from HP QuickTest Pro QTP to TestMaker Object Designer
Migrating from HP QuickTest Pro QTP to TestMaker Object Designer
 
Unit Test con Embarcadero RAD Studio
Unit Test con Embarcadero RAD StudioUnit Test con Embarcadero RAD Studio
Unit Test con Embarcadero RAD Studio
 
Taming the Deployment Beast
Taming the Deployment BeastTaming the Deployment Beast
Taming the Deployment Beast
 

Destaque

DevOps, we need you.
DevOps, we need you.DevOps, we need you.
DevOps, we need you.Henry Huang
 
Creating a pull for DevOps in an Agile Transformation
Creating a pull for DevOps in an Agile TransformationCreating a pull for DevOps in an Agile Transformation
Creating a pull for DevOps in an Agile TransformationTimothy Wise
 
Puppet Camp Dallas 2014: Using Puppet in Hybrid Cloud Deployments
Puppet Camp Dallas 2014: Using Puppet in Hybrid Cloud DeploymentsPuppet Camp Dallas 2014: Using Puppet in Hybrid Cloud Deployments
Puppet Camp Dallas 2014: Using Puppet in Hybrid Cloud DeploymentsPuppet
 
Top 10 DevOps Areas Need To Focus
Top 10 DevOps Areas Need To FocusTop 10 DevOps Areas Need To Focus
Top 10 DevOps Areas Need To Focusdevopsjourney
 
WinOps Conf 2015 - Steve Thair - Why we need a DevOps on Windows Conference
WinOps Conf 2015 - Steve Thair - Why we need a DevOps on Windows ConferenceWinOps Conf 2015 - Steve Thair - Why we need a DevOps on Windows Conference
WinOps Conf 2015 - Steve Thair - Why we need a DevOps on Windows ConferenceWinOps Conf
 
What skills and personality do you need for a career in DevOps?
What skills and personality do you need for a career in DevOps?What skills and personality do you need for a career in DevOps?
What skills and personality do you need for a career in DevOps?Puppet
 
What Big Data Folks Need to Know About DevOps
What Big Data Folks Need to Know About DevOpsWhat Big Data Folks Need to Know About DevOps
What Big Data Folks Need to Know About DevOpsMatt Ray
 
DOES16 San Francisco - Will Evans & Mark Landy - The Need for Speed: Enabling...
DOES16 San Francisco - Will Evans & Mark Landy - The Need for Speed: Enabling...DOES16 San Francisco - Will Evans & Mark Landy - The Need for Speed: Enabling...
DOES16 San Francisco - Will Evans & Mark Landy - The Need for Speed: Enabling...Gene Kim
 
The History of DevOps (and what you need to do about it)
The History of DevOps (and what you need to do about it)The History of DevOps (and what you need to do about it)
The History of DevOps (and what you need to do about it)dev2ops
 

Destaque (14)

Matematicki maraton
Matematicki maratonMatematicki maraton
Matematicki maraton
 
DevOps, we need you.
DevOps, we need you.DevOps, we need you.
DevOps, we need you.
 
DevOps
DevOpsDevOps
DevOps
 
Creating a pull for DevOps in an Agile Transformation
Creating a pull for DevOps in an Agile TransformationCreating a pull for DevOps in an Agile Transformation
Creating a pull for DevOps in an Agile Transformation
 
DevOps
DevOpsDevOps
DevOps
 
Puppet Camp Dallas 2014: Using Puppet in Hybrid Cloud Deployments
Puppet Camp Dallas 2014: Using Puppet in Hybrid Cloud DeploymentsPuppet Camp Dallas 2014: Using Puppet in Hybrid Cloud Deployments
Puppet Camp Dallas 2014: Using Puppet in Hybrid Cloud Deployments
 
Top 10 DevOps Areas Need To Focus
Top 10 DevOps Areas Need To FocusTop 10 DevOps Areas Need To Focus
Top 10 DevOps Areas Need To Focus
 
WinOps Conf 2015 - Steve Thair - Why we need a DevOps on Windows Conference
WinOps Conf 2015 - Steve Thair - Why we need a DevOps on Windows ConferenceWinOps Conf 2015 - Steve Thair - Why we need a DevOps on Windows Conference
WinOps Conf 2015 - Steve Thair - Why we need a DevOps on Windows Conference
 
What skills and personality do you need for a career in DevOps?
What skills and personality do you need for a career in DevOps?What skills and personality do you need for a career in DevOps?
What skills and personality do you need for a career in DevOps?
 
What Big Data Folks Need to Know About DevOps
What Big Data Folks Need to Know About DevOpsWhat Big Data Folks Need to Know About DevOps
What Big Data Folks Need to Know About DevOps
 
DOES16 San Francisco - Will Evans & Mark Landy - The Need for Speed: Enabling...
DOES16 San Francisco - Will Evans & Mark Landy - The Need for Speed: Enabling...DOES16 San Francisco - Will Evans & Mark Landy - The Need for Speed: Enabling...
DOES16 San Francisco - Will Evans & Mark Landy - The Need for Speed: Enabling...
 
The History of DevOps (and what you need to do about it)
The History of DevOps (and what you need to do about it)The History of DevOps (and what you need to do about it)
The History of DevOps (and what you need to do about it)
 
Introducing DevOps
Introducing DevOpsIntroducing DevOps
Introducing DevOps
 
What is DevOps and Why do you need DevOps
What is DevOps and Why do you need DevOps What is DevOps and Why do you need DevOps
What is DevOps and Why do you need DevOps
 

Semelhante a Alex Honor - Devops Toolchain

The Dog Ate My Deployment - Symfony Usergroup Cologne July 2013
The Dog Ate My Deployment - Symfony Usergroup Cologne July 2013The Dog Ate My Deployment - Symfony Usergroup Cologne July 2013
The Dog Ate My Deployment - Symfony Usergroup Cologne July 2013D
 
Plugin Overview I and II
Plugin Overview I and IIPlugin Overview I and II
Plugin Overview I and IIdotCMS
 
Automated Deployment Pipeline using Jenkins, Puppet, Mcollective and AWS
Automated Deployment Pipeline using Jenkins, Puppet, Mcollective and AWSAutomated Deployment Pipeline using Jenkins, Puppet, Mcollective and AWS
Automated Deployment Pipeline using Jenkins, Puppet, Mcollective and AWSBamdad Dashtban
 
Softsphere - Development for administrators
Softsphere - Development for administratorsSoftsphere - Development for administrators
Softsphere - Development for administratorsBill Buchan
 
Treat your servers like your Ruby App: Infrastructure as Code
Treat your servers like your Ruby App: Infrastructure as CodeTreat your servers like your Ruby App: Infrastructure as Code
Treat your servers like your Ruby App: Infrastructure as CodeRakuten Group, Inc.
 
Jdc 2010 - Maven, Intelligent Projects
Jdc 2010 - Maven, Intelligent ProjectsJdc 2010 - Maven, Intelligent Projects
Jdc 2010 - Maven, Intelligent ProjectsMert Çalışkan
 
Apache maven, a software project management tool
Apache maven, a software project management toolApache maven, a software project management tool
Apache maven, a software project management toolRenato Primavera
 
Enhance your Agility with DevOps
Enhance your Agility with DevOpsEnhance your Agility with DevOps
Enhance your Agility with DevOpsEdureka!
 
Devops : Automate Your Infrastructure with Puppet
Devops : Automate Your Infrastructure with PuppetDevops : Automate Your Infrastructure with Puppet
Devops : Automate Your Infrastructure with PuppetEdureka!
 
Jopr Plugin Development
Jopr Plugin DevelopmentJopr Plugin Development
Jopr Plugin DevelopmentSEA Tecnologia
 
Selenium-Webdriver With PHPUnit Automation test for Joomla CMS!
Selenium-Webdriver With PHPUnit Automation test for Joomla CMS!Selenium-Webdriver With PHPUnit Automation test for Joomla CMS!
Selenium-Webdriver With PHPUnit Automation test for Joomla CMS!Puneet Kala
 
Introduction To Maven2
Introduction To Maven2Introduction To Maven2
Introduction To Maven2Shuji Watanabe
 
Automated testing DrupalCamp in Asheville
Automated testing DrupalCamp in AshevilleAutomated testing DrupalCamp in Asheville
Automated testing DrupalCamp in AshevillePromet Source
 
Openshift cheat rhce_r3v1 rhce
Openshift cheat rhce_r3v1 rhceOpenshift cheat rhce_r3v1 rhce
Openshift cheat rhce_r3v1 rhceDarnette A
 
CAPS: What's best for deploying and managing OpenStack? Chef vs. Ansible vs. ...
CAPS: What's best for deploying and managing OpenStack? Chef vs. Ansible vs. ...CAPS: What's best for deploying and managing OpenStack? Chef vs. Ansible vs. ...
CAPS: What's best for deploying and managing OpenStack? Chef vs. Ansible vs. ...Daniel Krook
 
CAPS: What's best for deploying and managing OpenStack? Chef vs. Ansible vs. ...
CAPS: What's best for deploying and managing OpenStack? Chef vs. Ansible vs. ...CAPS: What's best for deploying and managing OpenStack? Chef vs. Ansible vs. ...
CAPS: What's best for deploying and managing OpenStack? Chef vs. Ansible vs. ...Animesh Singh
 
Puppet At Twitter - Puppet Camp Silicon Valley
Puppet At Twitter - Puppet Camp Silicon ValleyPuppet At Twitter - Puppet Camp Silicon Valley
Puppet At Twitter - Puppet Camp Silicon ValleyPuppet
 
Software Testen mit Visual Studio Lab Management
Software Testen mit Visual Studio Lab ManagementSoftware Testen mit Visual Studio Lab Management
Software Testen mit Visual Studio Lab ManagementNico Orschel
 

Semelhante a Alex Honor - Devops Toolchain (20)

The Dog Ate My Deployment - Symfony Usergroup Cologne July 2013
The Dog Ate My Deployment - Symfony Usergroup Cologne July 2013The Dog Ate My Deployment - Symfony Usergroup Cologne July 2013
The Dog Ate My Deployment - Symfony Usergroup Cologne July 2013
 
Plugin Overview I and II
Plugin Overview I and IIPlugin Overview I and II
Plugin Overview I and II
 
Automated Deployment Pipeline using Jenkins, Puppet, Mcollective and AWS
Automated Deployment Pipeline using Jenkins, Puppet, Mcollective and AWSAutomated Deployment Pipeline using Jenkins, Puppet, Mcollective and AWS
Automated Deployment Pipeline using Jenkins, Puppet, Mcollective and AWS
 
Softsphere - Development for administrators
Softsphere - Development for administratorsSoftsphere - Development for administrators
Softsphere - Development for administrators
 
Treat your servers like your Ruby App: Infrastructure as Code
Treat your servers like your Ruby App: Infrastructure as CodeTreat your servers like your Ruby App: Infrastructure as Code
Treat your servers like your Ruby App: Infrastructure as Code
 
Alm 4 Azure
Alm 4 AzureAlm 4 Azure
Alm 4 Azure
 
Jdc 2010 - Maven, Intelligent Projects
Jdc 2010 - Maven, Intelligent ProjectsJdc 2010 - Maven, Intelligent Projects
Jdc 2010 - Maven, Intelligent Projects
 
Apache maven, a software project management tool
Apache maven, a software project management toolApache maven, a software project management tool
Apache maven, a software project management tool
 
Enhance your Agility with DevOps
Enhance your Agility with DevOpsEnhance your Agility with DevOps
Enhance your Agility with DevOps
 
Maven
MavenMaven
Maven
 
Devops : Automate Your Infrastructure with Puppet
Devops : Automate Your Infrastructure with PuppetDevops : Automate Your Infrastructure with Puppet
Devops : Automate Your Infrastructure with Puppet
 
Jopr Plugin Development
Jopr Plugin DevelopmentJopr Plugin Development
Jopr Plugin Development
 
Selenium-Webdriver With PHPUnit Automation test for Joomla CMS!
Selenium-Webdriver With PHPUnit Automation test for Joomla CMS!Selenium-Webdriver With PHPUnit Automation test for Joomla CMS!
Selenium-Webdriver With PHPUnit Automation test for Joomla CMS!
 
Introduction To Maven2
Introduction To Maven2Introduction To Maven2
Introduction To Maven2
 
Automated testing DrupalCamp in Asheville
Automated testing DrupalCamp in AshevilleAutomated testing DrupalCamp in Asheville
Automated testing DrupalCamp in Asheville
 
Openshift cheat rhce_r3v1 rhce
Openshift cheat rhce_r3v1 rhceOpenshift cheat rhce_r3v1 rhce
Openshift cheat rhce_r3v1 rhce
 
CAPS: What's best for deploying and managing OpenStack? Chef vs. Ansible vs. ...
CAPS: What's best for deploying and managing OpenStack? Chef vs. Ansible vs. ...CAPS: What's best for deploying and managing OpenStack? Chef vs. Ansible vs. ...
CAPS: What's best for deploying and managing OpenStack? Chef vs. Ansible vs. ...
 
CAPS: What's best for deploying and managing OpenStack? Chef vs. Ansible vs. ...
CAPS: What's best for deploying and managing OpenStack? Chef vs. Ansible vs. ...CAPS: What's best for deploying and managing OpenStack? Chef vs. Ansible vs. ...
CAPS: What's best for deploying and managing OpenStack? Chef vs. Ansible vs. ...
 
Puppet At Twitter - Puppet Camp Silicon Valley
Puppet At Twitter - Puppet Camp Silicon ValleyPuppet At Twitter - Puppet Camp Silicon Valley
Puppet At Twitter - Puppet Camp Silicon Valley
 
Software Testen mit Visual Studio Lab Management
Software Testen mit Visual Studio Lab ManagementSoftware Testen mit Visual Studio Lab Management
Software Testen mit Visual Studio Lab Management
 

Último

Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
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 productivityPrincipled Technologies
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
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 interpreternaman860154
 
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 organizationRadu Cotescu
 
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 Nanonetsnaman860154
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
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 MenDelhi Call girls
 
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 AutomationSafe Software
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
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 SolutionsEnterprise Knowledge
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
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 WorkerThousandEyes
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 

Último (20)

Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
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
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
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
 
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
 
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
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
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
 
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
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
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
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
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
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 

Alex Honor - Devops Toolchain

  • 1. Simple Release and Deploy Tool chain in Action Alex Honor Friday, June 25, 2010 1
  • 2. For DevOps need a way to let... Developers Operations specify packages they perform release and need in operations deployment Friday, June 25, 2010 2
  • 3. Need: Developers specify needed package versions... Application Code Application Configuration Third Party Packages Friday, June 25, 2010 3
  • 4. Need: Release manager* controls the release... Issue tracking status QA approval Change control scheduling Promotes the artifacts (*Person or Role) Friday, June 25, 2010 4
  • 5. Need: Ops run deployment... Assess scheduling conflicts Decide how to batch updates Deploys packages Friday, June 25, 2010 5
  • 6. Need: Managers want... Responsibility and boundaries Enforce process through authorization Audit and trace changes Friday, June 25, 2010 6
  • 7. Need: Self service for everyone... Each role works independently Tools provide the self service interfaces Friday, June 25, 2010 7
  • 8. Need: Keep it simple... Use freely available tools Reflect roles and process Is easy to understand at any level copy/ check create out repo yum install http / query Control Hudson Center Console App hosts Friday, June 25, 2010 8
  • 9. Tool: The “Meta” Package... Represents a coupled set of packages Based on RPM dependencies Spec just “Requires” statements Requires Friday, June 25, 2010 9
  • 10. Tool: Yum Repository... Central storage and index Resolve and install package dependancies Allocate a repository to each application team app host Friday, June 25, 2010 10
  • 11. Tool: Sources in SCM... RPM specification RPM build procedure Related files needed by release process Developers have commit access Friday, June 25, 2010 11
  • 12. Tool: CI job... Monitor .spec file checkins Run rpmbuild for the “meta package” Identify artifacts (RPMs) Devs modify / run job when desired Friday, June 25, 2010 12
  • 13. Tool: Runbook Jobs... Promote Release Manager moves artifacts to Yum Promote Deploy Control Center Jobs Deploy Ops Admin deploys Distributed packages to hosts command dispatch Yum repo host App hosts Friday, June 25, 2010 13
  • 14. Process: Specify package needs... name: acme-rockets version: 1.0 release: 0 summary: The Acme Rockets app package set group: acme/rockets license: proprietary requires: php >= 5.3.2 requires: php < 5.3.0 requires: acme-rockets = 1.2.3 requires: memcached = 1.4.5 checkout/ checkin %description The Acme Rockets app package dependencies. edit %files # NONE App %changelog * Mon Jun 14 2010 Wiley Cayote <wc@acme.com> 1.0-0 Developer - Initial spec file. Friday, June 25, 2010 14
  • 15. Process: CI Build checkin App spec Developer Detects and builds meta package rpms Hudson Console Artifacts REST call Query artifact list Friday, June 25, 2010 15
  • 16. Process: Promote REST query create repo Control Hudson Center Console Detects and Promote builds metapackages run job Release manager Friday, June 25, 2010 16
  • 17. Process: Deploy yum install Control Center Deploy app host run job Ops admin Friday, June 25, 2010 17
  • 18. Audit: Management traceability SCM revision to package version “Meta package” to required packages Package to host Friday, June 25, 2010 18
  • 19. Audit: Audit compliance SCM change log: Only devs can commit ControlCenter event log: Only releaser role can run Promote Only ops can run Deploy Yum: Only packages specified by devs should be in their team’s repository Friday, June 25, 2010 19
  • 20. Discuss ideas like this... DevOps Tool chain Project http://google.com/group/devops-toolchain Friday, June 25, 2010 20