SlideShare a Scribd company logo
ACHIEVING CONTINUOUS
DELIVERY:
AN AUTOMATION STORY
ABOUT ME
JAMES CAMMARATA, DIRECTOR - CORE ENGINEERING
Python developer since 2003
Started contributingto Cobbler in September of 2008, and took
over the projectleadership in 2010
Joined Ansible in July, 2013
WHAT IS CONTINUOUS
DELIVERY?
Continuous deliveryaims to reduce the impactof releasing
software bydoingitmore frequently.
Popularized in the book 'Continuous Delivery: Reliable Software
Releases through Build, Test, and DeploymentAutomation',
written byJez Humble and David Farleyin 2010.
(VIDEO)
WHY USE ANSIBLE FOR
CONTINUOUS DELIVERY?
SIMPLICITY
No agents, and aclean playbook syntax are undoubtably
Ansible's two greateststrengths.
AUTOMATION OF COMPLEX DEPLOYMENT
ORCHESTRATION
Rollingreboots of web servers
Migratingprimary/secondary/tertiarydatabases like MySQL
Buildingand deployingnew AMIs/virtualinstances or
containers for immutable infrastructure
Removing/re-enablingmonitoringon servers or services being
updated
REUSABILITY AND CONSISTENCY
Developers usingVagrantor other setups locallycan easily
check outthe exactsame playbooks run in stagingand/or
production to ensure consistency.
Your CI system can use the exactsame playbooks too, rather
than shellscriptingeverything.
EXTENSIBILITY
Ansible has over 250 modules included, butif you need to
interface with an API we don'tsupport, writingmodules to
extend the functionalityis veryeasyand straightforward.
OTHERS HAVE ALREADY DONE THIS
Tons of blogs outthere alreadyoutline how to setallof this up
usingAnsible, so mostof the hard work has been done for you!
Ansible's user communityhas exploded, and gettinghelp is easy.
COMMON PATTERNS
CONTINUOUS INTEGRATION SYSTEM
Jenkins/Hudson, TravisCI, etc.
(source,DevOpsReactions–http://bit.ly/1NkG1ax)
SOURCE CONTROL
Stores both the application code and your Ansible playbooks
(infrastructure as data, notcode).
Allcommits trigger an automatic deploymentto the staging/QA
environment(s), followed byautomated testing.
If the automated testingpasses, the deploymentto production
can triggered byaperson or automatically.
AUTOMATED TESTING
Absolutelycriticalto continuous integration and delivery,
automated testingis whatverifies your code is ok to deploy.
Unittesting
Integration testing
Selenium, Ghost/CasperJS, etc.
MONITORING (ALL THE THINGS!)
Logand graph everything(Graphite and other popular projects
make this nearlytrivial). This is how you diagnose problems with
anygiven deploymentlater.
(source,https://codeascraft.com/2010/12/08/track-every-release/)
An excellentDigitalOcean blogon Graphite+statsd+collectd:
http://bit.ly/1Gx4UM2
CHATOPS
BENEFITS OF CHATOPS:
Everyone knows whateveryone else is doing, leadingto an
increased levelof transparencyacross your teams.
Because of this transparency, these actions also become self-
documentingwhich helps new hires learn the ropes more
quickly, especiallyif they're remote.
Communication is instantaneous and more fluid, as Ops don't
have to flip between emailor head off to a'war room'for
issues.
Time to execute actions is reduced, as there is now asingle
interface to trigger actions on disparate pieces of
infrastructure.
CASE STUDIES
ATLASSIAN
Atlassian is averywellknown software company, with products
such as JIRA, HipChatand Confluence to name afew.
Uses Ansible to address whattheycallthe 'lastmile problem', or
the finalstep in continuous deployment.
From their blog:
Developers perform continous testing/integration against
feature branches
After these feature branches are merged into the release
branch, Bamboo (Atlassian's CI product) is used to create a
build artifact(binary)
Ansible is used to deploythis same artifactto each of the
staging, QAand production environments in turn
ATLASSIAN (CONT.)
Advantages:
1. Promotingthe same build artifactthrough each environment
ensures consistency.
2. Despite usingin-house products, their approach is very
technologyagnostic and could easilybe adapted to other tools.
Disadvantages: Internalteams are verysegregated, with strict
separation of duties (silos) for deployments.
RISINGSTACK
RisingStack is aJavaScriptconsultancygroup, focusingon
NodeJS delivery.
UsingCodeShip (a3rd partyservice) and acustom web hook
service to trigger Docker builds and Ansible deployments to
automate their container-based approach to immutable
infrastructure.
(source:http://blog.risingstack.com/shipping-node-js-applications-with-docker-and-codeship/)
RISINGSTACK (CONT.)
From their blog:
Commits to the master branch trigger trigger builds in the
CodeShip service
If alltests pass, anew docker image is created and uploaded to
Docker Hub
After the upload is complete, another web hook is triggered on
their (custom, in-house) service which executes Ansible
Ansible downloads and deploys the new docker image on each
application server
RISINGSTACK (CONT.)
Advantages: Completelyautomated with no intervention
required to deploy.
Disadvantages: Custom service, when an off-the-shelf CI system
could be used to simplifythings.
BIGPANDA
BigPandais acompanycentered around automatingincident
management, and use ChatOps and Ansible heavilyin their day
to dayoperations
5 Reasons We Love UsingAnsible for Continuous Delivery-
http://bit.ly/1EkbqEi
Their motto is: 'Make the scariestpartof the build the easiest'.
BIGPANDA (CONT.)
Use acombination of HipChatand Hubot(called BeanBot
internally) to automate ops tasks (aone-person ops team).
GRASSWIRE
GrassWire is arecentstartup builtaround crowd-sourcingfact
verification in news reports.
Another ChatOps follower, GrassWire deploys their software via
Slack, which nativelysupports executingwebhooks remotelyand
does notrequire achatbot.
Use Packer to build new AMIs viaJenkins, and use Ansible to
deploythose new images to production alongwith their
application.
UsingTerraform to build initialAWS environments, rather than
CloudFormation or other tools.
GRASSWIRE (CONT.)
Their Packer integration also uses Tower, to take advantage of
the provisioningcallback feature.
"provisioners":[{
"type":"file",
"source":"./{{user`gw_env`}}/setup_callback.sh",
"destination":"/home/ec2-user/setup_callback.sh"
},
{"type":"shell","inline":[
"sudochmod+x/home/ec2-user/setup_callback.sh",
"echosh/home/ec2-user/setup_callback.sh|sudotee--append/etc/rc.local
]}
}]
Since theyalso use Tower for other tasks, theyare able to use the
tower-clicommand directlyin Jenkins to simplifytheir Jenkins
tasks.
TIPS AND TRICKS
USE ANSIBLE TO BUILD YOUR CONTINUOUS DELIVERY
ENVIRONMENT
Roles exist(on Galaxyand generallyon Github) to build allof
these components for you now. Use them to getup and running
quickly.
USE ANSIBLE FROM DAY 1
If you do anything, do itfrom Ansible. Don'tSSHto aserver, just
putwhatever itis you need to do in aplaybook and run that
instead.
QUESTIONS?
ATTRIBUTIONS:
LEGO GreatBallContraption (GBC) Layout2012.9
https://www.youtube.com/watch?v=sUtS52lqL5w
DevOps Reactions: Continuous Delivery
http://bit.ly/1NkG1ax
Code as CraftBlog: TrackingEveryRelease
https://codeascraft.com/2010/12/08/track-every-release/
DigitalOcean Blog: An Introduction to TrackingStatistics with
Graphite, StatsD, and CollectD
http://bit.ly/1Gx4UM2
Atlassian Blog: PracticalContinuous Deployment:
http://www.slideshare.net/tarkasteve/london-atlassian-user-
group-february-2014
ATTRIBUTIONS (CONT.):
RisingStack: ShippingNode.js Applications with Docker and
Codeship
http://blog.risingstack.com/shipping-node-js-applications-with-
docker-and-codeship/
BigPanda:
#ChatOpsFTW: http://www.slideshare.net/chuparkoff/chatops-
ftw
5 Reasons We Love UsingAnsible for Continuous Delivery:
http://bit.ly/1EkbqEi
THANKS!
twitter: jimi1283 github: jimi-c

More Related Content

What's hot

BlaBlaCar and infrastructure automation
BlaBlaCar and infrastructure automationBlaBlaCar and infrastructure automation
BlaBlaCar and infrastructure automationsinfomicien
 
TIAD : Automating the modern datacenter
TIAD : Automating the modern datacenterTIAD : Automating the modern datacenter
TIAD : Automating the modern datacenter
The Incredible Automation Day
 
TIAD : Automating the aplication lifecycle
TIAD : Automating the aplication lifecycleTIAD : Automating the aplication lifecycle
TIAD : Automating the aplication lifecycle
The Incredible Automation Day
 
TIAD - DYI: A simple orchestrator built step by step
TIAD - DYI: A simple orchestrator built step by stepTIAD - DYI: A simple orchestrator built step by step
TIAD - DYI: A simple orchestrator built step by step
The Incredible Automation Day
 
Ansible 2 and Ansible Galaxy 2
Ansible 2 and Ansible Galaxy 2Ansible 2 and Ansible Galaxy 2
Ansible 2 and Ansible Galaxy 2
Jeff Geerling
 
Ansible get started
Ansible get startedAnsible get started
Ansible get started
Rafael Cassau
 
100% Puppet Cloud Deployment of Legacy Software
100% Puppet Cloud Deployment of Legacy Software100% Puppet Cloud Deployment of Legacy Software
100% Puppet Cloud Deployment of Legacy Software
Puppet
 
DevOps in a Regulated World - aka 'Ansible, AWS, and Jenkins'
DevOps in a Regulated World - aka 'Ansible, AWS, and Jenkins'DevOps in a Regulated World - aka 'Ansible, AWS, and Jenkins'
DevOps in a Regulated World - aka 'Ansible, AWS, and Jenkins'
rmcleay
 
Ansible
AnsibleAnsible
Ansible
Rahul Bajaj
 
Infrastructure Automation with Chef & Ansible
Infrastructure Automation with Chef & AnsibleInfrastructure Automation with Chef & Ansible
Infrastructure Automation with Chef & Ansible
wajrcs
 
An Introduction into Bosh | anynines
An Introduction into Bosh | anynines An Introduction into Bosh | anynines
An Introduction into Bosh | anynines
anynines GmbH
 
Carlos Conde : AWS Game Days - TIAD Paris
Carlos Conde : AWS Game Days - TIAD ParisCarlos Conde : AWS Game Days - TIAD Paris
Carlos Conde : AWS Game Days - TIAD Paris
The Incredible Automation Day
 
Chef vs Puppet vs Ansible vs SaltStack | Configuration Management Tools Compa...
Chef vs Puppet vs Ansible vs SaltStack | Configuration Management Tools Compa...Chef vs Puppet vs Ansible vs SaltStack | Configuration Management Tools Compa...
Chef vs Puppet vs Ansible vs SaltStack | Configuration Management Tools Compa...
Edureka!
 
Immutable Infrastructure with Packer Ansible and Terraform
Immutable Infrastructure with Packer Ansible and TerraformImmutable Infrastructure with Packer Ansible and Terraform
Immutable Infrastructure with Packer Ansible and Terraform
Michael Peacock
 
Docker: automation for the rest of us
Docker: automation for the rest of usDocker: automation for the rest of us
Docker: automation for the rest of us
Jérôme Petazzoni
 
Masterless Puppet Using AWS S3 Buckets and IAM Roles
Masterless Puppet Using AWS S3 Buckets and IAM RolesMasterless Puppet Using AWS S3 Buckets and IAM Roles
Masterless Puppet Using AWS S3 Buckets and IAM Roles
Malcolm Duncanson, CISSP
 
Ansible Tutorial For Beginners | What Is Ansible And How It Works? | Ansible ...
Ansible Tutorial For Beginners | What Is Ansible And How It Works? | Ansible ...Ansible Tutorial For Beginners | What Is Ansible And How It Works? | Ansible ...
Ansible Tutorial For Beginners | What Is Ansible And How It Works? | Ansible ...
Simplilearn
 
Accelerating with Ansible
Accelerating with AnsibleAccelerating with Ansible
Accelerating with Ansible
Global Knowledge Training
 
What's New in v2 - AnsibleFest London 2015
What's New in v2 - AnsibleFest London 2015What's New in v2 - AnsibleFest London 2015
What's New in v2 - AnsibleFest London 2015
jimi-c
 
State of Puppet 2013 - Puppet Camp DC
State of Puppet 2013 - Puppet Camp DCState of Puppet 2013 - Puppet Camp DC
State of Puppet 2013 - Puppet Camp DCPuppet
 

What's hot (20)

BlaBlaCar and infrastructure automation
BlaBlaCar and infrastructure automationBlaBlaCar and infrastructure automation
BlaBlaCar and infrastructure automation
 
TIAD : Automating the modern datacenter
TIAD : Automating the modern datacenterTIAD : Automating the modern datacenter
TIAD : Automating the modern datacenter
 
TIAD : Automating the aplication lifecycle
TIAD : Automating the aplication lifecycleTIAD : Automating the aplication lifecycle
TIAD : Automating the aplication lifecycle
 
TIAD - DYI: A simple orchestrator built step by step
TIAD - DYI: A simple orchestrator built step by stepTIAD - DYI: A simple orchestrator built step by step
TIAD - DYI: A simple orchestrator built step by step
 
Ansible 2 and Ansible Galaxy 2
Ansible 2 and Ansible Galaxy 2Ansible 2 and Ansible Galaxy 2
Ansible 2 and Ansible Galaxy 2
 
Ansible get started
Ansible get startedAnsible get started
Ansible get started
 
100% Puppet Cloud Deployment of Legacy Software
100% Puppet Cloud Deployment of Legacy Software100% Puppet Cloud Deployment of Legacy Software
100% Puppet Cloud Deployment of Legacy Software
 
DevOps in a Regulated World - aka 'Ansible, AWS, and Jenkins'
DevOps in a Regulated World - aka 'Ansible, AWS, and Jenkins'DevOps in a Regulated World - aka 'Ansible, AWS, and Jenkins'
DevOps in a Regulated World - aka 'Ansible, AWS, and Jenkins'
 
Ansible
AnsibleAnsible
Ansible
 
Infrastructure Automation with Chef & Ansible
Infrastructure Automation with Chef & AnsibleInfrastructure Automation with Chef & Ansible
Infrastructure Automation with Chef & Ansible
 
An Introduction into Bosh | anynines
An Introduction into Bosh | anynines An Introduction into Bosh | anynines
An Introduction into Bosh | anynines
 
Carlos Conde : AWS Game Days - TIAD Paris
Carlos Conde : AWS Game Days - TIAD ParisCarlos Conde : AWS Game Days - TIAD Paris
Carlos Conde : AWS Game Days - TIAD Paris
 
Chef vs Puppet vs Ansible vs SaltStack | Configuration Management Tools Compa...
Chef vs Puppet vs Ansible vs SaltStack | Configuration Management Tools Compa...Chef vs Puppet vs Ansible vs SaltStack | Configuration Management Tools Compa...
Chef vs Puppet vs Ansible vs SaltStack | Configuration Management Tools Compa...
 
Immutable Infrastructure with Packer Ansible and Terraform
Immutable Infrastructure with Packer Ansible and TerraformImmutable Infrastructure with Packer Ansible and Terraform
Immutable Infrastructure with Packer Ansible and Terraform
 
Docker: automation for the rest of us
Docker: automation for the rest of usDocker: automation for the rest of us
Docker: automation for the rest of us
 
Masterless Puppet Using AWS S3 Buckets and IAM Roles
Masterless Puppet Using AWS S3 Buckets and IAM RolesMasterless Puppet Using AWS S3 Buckets and IAM Roles
Masterless Puppet Using AWS S3 Buckets and IAM Roles
 
Ansible Tutorial For Beginners | What Is Ansible And How It Works? | Ansible ...
Ansible Tutorial For Beginners | What Is Ansible And How It Works? | Ansible ...Ansible Tutorial For Beginners | What Is Ansible And How It Works? | Ansible ...
Ansible Tutorial For Beginners | What Is Ansible And How It Works? | Ansible ...
 
Accelerating with Ansible
Accelerating with AnsibleAccelerating with Ansible
Accelerating with Ansible
 
What's New in v2 - AnsibleFest London 2015
What's New in v2 - AnsibleFest London 2015What's New in v2 - AnsibleFest London 2015
What's New in v2 - AnsibleFest London 2015
 
State of Puppet 2013 - Puppet Camp DC
State of Puppet 2013 - Puppet Camp DCState of Puppet 2013 - Puppet Camp DC
State of Puppet 2013 - Puppet Camp DC
 

Viewers also liked

V2 and beyond
V2 and beyondV2 and beyond
V2 and beyond
jimi-c
 
AnsibleBuilding a Docker-ized Microservice In Node, Using Ansible - AnsibleF...
AnsibleBuilding a Docker-ized Microservice  In Node, Using Ansible - AnsibleF...AnsibleBuilding a Docker-ized Microservice  In Node, Using Ansible - AnsibleF...
AnsibleBuilding a Docker-ized Microservice In Node, Using Ansible - AnsibleF...
Irakli Nadareishvili
 
Ansible tips & tricks
Ansible tips & tricksAnsible tips & tricks
Ansible tips & tricks
bcoca
 
Docker orchestration using core os and ansible - Ansible IL 2015
Docker orchestration using core os and ansible - Ansible IL 2015Docker orchestration using core os and ansible - Ansible IL 2015
Docker orchestration using core os and ansible - Ansible IL 2015
Leonid Mirsky
 
AnsibleFest 2014 - Role Tips and Tricks
AnsibleFest 2014 - Role Tips and TricksAnsibleFest 2014 - Role Tips and Tricks
AnsibleFest 2014 - Role Tips and Tricks
jimi-c
 
Ansible Oxford - Cows & Containers
Ansible Oxford - Cows & ContainersAnsible Oxford - Cows & Containers
Ansible Oxford - Cows & Containers
jonatanblue
 
Infrastructure Deployment with Docker & Ansible
Infrastructure Deployment with Docker & AnsibleInfrastructure Deployment with Docker & Ansible
Infrastructure Deployment with Docker & Ansible
Robert Reiz
 
Infra / Cont delivery - 3rd party automation
Infra / Cont delivery - 3rd party automationInfra / Cont delivery - 3rd party automation
Infra / Cont delivery - 3rd party automation
Shay Cohen
 
Hacking ansible
Hacking ansibleHacking ansible
Hacking ansible
bcoca
 
Automate Your Software Development Life Cycle Using the Right Tools
Automate Your Software Development Life Cycle Using the Right ToolsAutomate Your Software Development Life Cycle Using the Right Tools
Automate Your Software Development Life Cycle Using the Right Tools
Info-Tech Research Group
 
Automated Testing in DevOps
Automated Testing in DevOpsAutomated Testing in DevOps
Automated Testing in DevOps
Haufe-Lexware GmbH & Co KG
 
Refactoring: Improving the design of existing code. Chapter 6.
Refactoring: Improving the design of existing code. Chapter 6.Refactoring: Improving the design of existing code. Chapter 6.
Refactoring: Improving the design of existing code. Chapter 6.
Andrés Callejas González
 
Continuous Delivery: Integrating the Deployment Pipeline Toolchain Through Au...
Continuous Delivery: Integrating the Deployment Pipeline Toolchain Through Au...Continuous Delivery: Integrating the Deployment Pipeline Toolchain Through Au...
Continuous Delivery: Integrating the Deployment Pipeline Toolchain Through Au...
Serena Software
 
Continuos Delivery
Continuos DeliveryContinuos Delivery
Continuos Delivery
Andrés Callejas González
 
Adobe Presents Internal Service Delivery Platform at Velocity 13 Santa Clara
Adobe Presents Internal Service Delivery Platform at Velocity 13 Santa ClaraAdobe Presents Internal Service Delivery Platform at Velocity 13 Santa Clara
Adobe Presents Internal Service Delivery Platform at Velocity 13 Santa Clara
dev2ops
 
Continuous Delivery Automation of Cloud Infrastructure and Applications at Ch...
Continuous Delivery Automation of Cloud Infrastructure and Applications at Ch...Continuous Delivery Automation of Cloud Infrastructure and Applications at Ch...
Continuous Delivery Automation of Cloud Infrastructure and Applications at Ch...
Brian Mericle
 
Support and Initiate a DevOps Transformation
Support and Initiate a DevOps TransformationSupport and Initiate a DevOps Transformation
Support and Initiate a DevOps Transformation
dev2ops
 
Automate the sdlc process
Automate the sdlc processAutomate the sdlc process
Automate the sdlc process
Michael Deady
 

Viewers also liked (18)

V2 and beyond
V2 and beyondV2 and beyond
V2 and beyond
 
AnsibleBuilding a Docker-ized Microservice In Node, Using Ansible - AnsibleF...
AnsibleBuilding a Docker-ized Microservice  In Node, Using Ansible - AnsibleF...AnsibleBuilding a Docker-ized Microservice  In Node, Using Ansible - AnsibleF...
AnsibleBuilding a Docker-ized Microservice In Node, Using Ansible - AnsibleF...
 
Ansible tips & tricks
Ansible tips & tricksAnsible tips & tricks
Ansible tips & tricks
 
Docker orchestration using core os and ansible - Ansible IL 2015
Docker orchestration using core os and ansible - Ansible IL 2015Docker orchestration using core os and ansible - Ansible IL 2015
Docker orchestration using core os and ansible - Ansible IL 2015
 
AnsibleFest 2014 - Role Tips and Tricks
AnsibleFest 2014 - Role Tips and TricksAnsibleFest 2014 - Role Tips and Tricks
AnsibleFest 2014 - Role Tips and Tricks
 
Ansible Oxford - Cows & Containers
Ansible Oxford - Cows & ContainersAnsible Oxford - Cows & Containers
Ansible Oxford - Cows & Containers
 
Infrastructure Deployment with Docker & Ansible
Infrastructure Deployment with Docker & AnsibleInfrastructure Deployment with Docker & Ansible
Infrastructure Deployment with Docker & Ansible
 
Infra / Cont delivery - 3rd party automation
Infra / Cont delivery - 3rd party automationInfra / Cont delivery - 3rd party automation
Infra / Cont delivery - 3rd party automation
 
Hacking ansible
Hacking ansibleHacking ansible
Hacking ansible
 
Automate Your Software Development Life Cycle Using the Right Tools
Automate Your Software Development Life Cycle Using the Right ToolsAutomate Your Software Development Life Cycle Using the Right Tools
Automate Your Software Development Life Cycle Using the Right Tools
 
Automated Testing in DevOps
Automated Testing in DevOpsAutomated Testing in DevOps
Automated Testing in DevOps
 
Refactoring: Improving the design of existing code. Chapter 6.
Refactoring: Improving the design of existing code. Chapter 6.Refactoring: Improving the design of existing code. Chapter 6.
Refactoring: Improving the design of existing code. Chapter 6.
 
Continuous Delivery: Integrating the Deployment Pipeline Toolchain Through Au...
Continuous Delivery: Integrating the Deployment Pipeline Toolchain Through Au...Continuous Delivery: Integrating the Deployment Pipeline Toolchain Through Au...
Continuous Delivery: Integrating the Deployment Pipeline Toolchain Through Au...
 
Continuos Delivery
Continuos DeliveryContinuos Delivery
Continuos Delivery
 
Adobe Presents Internal Service Delivery Platform at Velocity 13 Santa Clara
Adobe Presents Internal Service Delivery Platform at Velocity 13 Santa ClaraAdobe Presents Internal Service Delivery Platform at Velocity 13 Santa Clara
Adobe Presents Internal Service Delivery Platform at Velocity 13 Santa Clara
 
Continuous Delivery Automation of Cloud Infrastructure and Applications at Ch...
Continuous Delivery Automation of Cloud Infrastructure and Applications at Ch...Continuous Delivery Automation of Cloud Infrastructure and Applications at Ch...
Continuous Delivery Automation of Cloud Infrastructure and Applications at Ch...
 
Support and Initiate a DevOps Transformation
Support and Initiate a DevOps TransformationSupport and Initiate a DevOps Transformation
Support and Initiate a DevOps Transformation
 
Automate the sdlc process
Automate the sdlc processAutomate the sdlc process
Automate the sdlc process
 

Similar to Achieving Continuous Delivery: An Automation Story

Ansible
AnsibleAnsible
Mage Titans USA 2016 - Jonathan Bownds - Magento CI and Testing
Mage Titans USA 2016 - Jonathan Bownds - Magento CI and Testing Mage Titans USA 2016 - Jonathan Bownds - Magento CI and Testing
Mage Titans USA 2016 - Jonathan Bownds - Magento CI and Testing
Stacey Whitney
 
Product! - The road to production deployment
Product! - The road to production deploymentProduct! - The road to production deployment
Product! - The road to production deployment
Filippo Zanella
 
Ansible: Simple yet powerful IT automation tool
Ansible: Simple yet powerful IT automation toolAnsible: Simple yet powerful IT automation tool
Ansible: Simple yet powerful IT automation tool
sureshraj43
 
Top 3 Useful Tools for DevOps Automation -
Top 3 Useful Tools for DevOps Automation -Top 3 Useful Tools for DevOps Automation -
Top 3 Useful Tools for DevOps Automation -
Urolime Technologies
 
The Twelve Factor App
The Twelve Factor AppThe Twelve Factor App
The Twelve Factor App
Pablo Fullana
 
Api gitlab: configurazione dei progetti as a service
Api gitlab: configurazione dei progetti as a serviceApi gitlab: configurazione dei progetti as a service
Api gitlab: configurazione dei progetti as a service
Emerasoft, solutions to collaborate
 
The Platform Mullet
The Platform MulletThe Platform Mullet
The Platform Mullet
pczarkowski
 
How we built Packet's bare metal cloud platform
How we built Packet's bare metal cloud platformHow we built Packet's bare metal cloud platform
How we built Packet's bare metal cloud platform
Packet
 
Basic concepts for_clustered_data_ontap_8.3_v1.1-lab_guide
Basic concepts for_clustered_data_ontap_8.3_v1.1-lab_guideBasic concepts for_clustered_data_ontap_8.3_v1.1-lab_guide
Basic concepts for_clustered_data_ontap_8.3_v1.1-lab_guide
Vikas Sharma
 
Path to continuous delivery
Path to continuous deliveryPath to continuous delivery
Path to continuous delivery
Anirudh Bhatnagar
 
How Atlassian's Build Engineering Team Has Scaled to 150k Builds Per Month an...
How Atlassian's Build Engineering Team Has Scaled to 150k Builds Per Month an...How Atlassian's Build Engineering Team Has Scaled to 150k Builds Per Month an...
How Atlassian's Build Engineering Team Has Scaled to 150k Builds Per Month an...
Peter Leschev
 
Micro services may not be the best idea
Micro services may not be the best ideaMicro services may not be the best idea
Micro services may not be the best idea
Samuel ROZE
 
Do modernizing the Mainframe for DevOps.
Do modernizing the Mainframe for DevOps.Do modernizing the Mainframe for DevOps.
Do modernizing the Mainframe for DevOps.
Massimo Talia
 
Aug NYC July 12 event
Aug NYC July 12 eventAug NYC July 12 event
Aug NYC July 12 event
AUGNYC
 
Confoo-Montreal-2016: Controlling Your Environments using Infrastructure as Code
Confoo-Montreal-2016: Controlling Your Environments using Infrastructure as CodeConfoo-Montreal-2016: Controlling Your Environments using Infrastructure as Code
Confoo-Montreal-2016: Controlling Your Environments using Infrastructure as Code
Steve Mercier
 
Top devops solution providers
Top devops solution providersTop devops solution providers
Top devops solution providers
ayush gupta
 
Shift Happens - Rapidly Rolling Forward During Production Failure
Shift Happens - Rapidly Rolling Forward During Production FailureShift Happens - Rapidly Rolling Forward During Production Failure
Shift Happens - Rapidly Rolling Forward During Production Failure
IBM UrbanCode Products
 
Imaginea - Ideas to Life - About Us
Imaginea - Ideas to Life - About UsImaginea - Ideas to Life - About Us
Imaginea - Ideas to Life - About Us
Imaginea
 
Architecting for Continuous Delivery
Architecting for Continuous DeliveryArchitecting for Continuous Delivery
Architecting for Continuous Delivery
Mohammad Bilal Wahla
 

Similar to Achieving Continuous Delivery: An Automation Story (20)

Ansible
AnsibleAnsible
Ansible
 
Mage Titans USA 2016 - Jonathan Bownds - Magento CI and Testing
Mage Titans USA 2016 - Jonathan Bownds - Magento CI and Testing Mage Titans USA 2016 - Jonathan Bownds - Magento CI and Testing
Mage Titans USA 2016 - Jonathan Bownds - Magento CI and Testing
 
Product! - The road to production deployment
Product! - The road to production deploymentProduct! - The road to production deployment
Product! - The road to production deployment
 
Ansible: Simple yet powerful IT automation tool
Ansible: Simple yet powerful IT automation toolAnsible: Simple yet powerful IT automation tool
Ansible: Simple yet powerful IT automation tool
 
Top 3 Useful Tools for DevOps Automation -
Top 3 Useful Tools for DevOps Automation -Top 3 Useful Tools for DevOps Automation -
Top 3 Useful Tools for DevOps Automation -
 
The Twelve Factor App
The Twelve Factor AppThe Twelve Factor App
The Twelve Factor App
 
Api gitlab: configurazione dei progetti as a service
Api gitlab: configurazione dei progetti as a serviceApi gitlab: configurazione dei progetti as a service
Api gitlab: configurazione dei progetti as a service
 
The Platform Mullet
The Platform MulletThe Platform Mullet
The Platform Mullet
 
How we built Packet's bare metal cloud platform
How we built Packet's bare metal cloud platformHow we built Packet's bare metal cloud platform
How we built Packet's bare metal cloud platform
 
Basic concepts for_clustered_data_ontap_8.3_v1.1-lab_guide
Basic concepts for_clustered_data_ontap_8.3_v1.1-lab_guideBasic concepts for_clustered_data_ontap_8.3_v1.1-lab_guide
Basic concepts for_clustered_data_ontap_8.3_v1.1-lab_guide
 
Path to continuous delivery
Path to continuous deliveryPath to continuous delivery
Path to continuous delivery
 
How Atlassian's Build Engineering Team Has Scaled to 150k Builds Per Month an...
How Atlassian's Build Engineering Team Has Scaled to 150k Builds Per Month an...How Atlassian's Build Engineering Team Has Scaled to 150k Builds Per Month an...
How Atlassian's Build Engineering Team Has Scaled to 150k Builds Per Month an...
 
Micro services may not be the best idea
Micro services may not be the best ideaMicro services may not be the best idea
Micro services may not be the best idea
 
Do modernizing the Mainframe for DevOps.
Do modernizing the Mainframe for DevOps.Do modernizing the Mainframe for DevOps.
Do modernizing the Mainframe for DevOps.
 
Aug NYC July 12 event
Aug NYC July 12 eventAug NYC July 12 event
Aug NYC July 12 event
 
Confoo-Montreal-2016: Controlling Your Environments using Infrastructure as Code
Confoo-Montreal-2016: Controlling Your Environments using Infrastructure as CodeConfoo-Montreal-2016: Controlling Your Environments using Infrastructure as Code
Confoo-Montreal-2016: Controlling Your Environments using Infrastructure as Code
 
Top devops solution providers
Top devops solution providersTop devops solution providers
Top devops solution providers
 
Shift Happens - Rapidly Rolling Forward During Production Failure
Shift Happens - Rapidly Rolling Forward During Production FailureShift Happens - Rapidly Rolling Forward During Production Failure
Shift Happens - Rapidly Rolling Forward During Production Failure
 
Imaginea - Ideas to Life - About Us
Imaginea - Ideas to Life - About UsImaginea - Ideas to Life - About Us
Imaginea - Ideas to Life - About Us
 
Architecting for Continuous Delivery
Architecting for Continuous DeliveryArchitecting for Continuous Delivery
Architecting for Continuous Delivery
 

Recently uploaded

When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...
Elena Simperl
 
JMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and GrafanaJMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and Grafana
RTTS
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
Thijs Feryn
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
Product School
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
Laura Byrne
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
Ana-Maria Mihalceanu
 
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMsTo Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
Paul Groth
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Tobias Schneck
 
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
Product School
 
Elevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object CalisthenicsElevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object Calisthenics
Dorra BARTAGUIZ
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
Kari Kakkonen
 
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Ramesh Iyer
 
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
Product School
 
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Product School
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
BookNet Canada
 
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Thierry Lestable
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
ThousandEyes
 
Connector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a buttonConnector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a button
DianaGray10
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdf
Cheryl Hung
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance
 

Recently uploaded (20)

When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...
 
JMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and GrafanaJMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and Grafana
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
 
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMsTo Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
 
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
 
Elevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object CalisthenicsElevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object Calisthenics
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
 
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
 
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
 
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
 
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
 
Connector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a buttonConnector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a button
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdf
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
 

Achieving Continuous Delivery: An Automation Story

  • 2. ABOUT ME JAMES CAMMARATA, DIRECTOR - CORE ENGINEERING Python developer since 2003 Started contributingto Cobbler in September of 2008, and took over the projectleadership in 2010 Joined Ansible in July, 2013
  • 4. Continuous deliveryaims to reduce the impactof releasing software bydoingitmore frequently. Popularized in the book 'Continuous Delivery: Reliable Software Releases through Build, Test, and DeploymentAutomation', written byJez Humble and David Farleyin 2010.
  • 6. WHY USE ANSIBLE FOR CONTINUOUS DELIVERY?
  • 7. SIMPLICITY No agents, and aclean playbook syntax are undoubtably Ansible's two greateststrengths.
  • 8. AUTOMATION OF COMPLEX DEPLOYMENT ORCHESTRATION Rollingreboots of web servers Migratingprimary/secondary/tertiarydatabases like MySQL Buildingand deployingnew AMIs/virtualinstances or containers for immutable infrastructure Removing/re-enablingmonitoringon servers or services being updated
  • 9. REUSABILITY AND CONSISTENCY Developers usingVagrantor other setups locallycan easily check outthe exactsame playbooks run in stagingand/or production to ensure consistency. Your CI system can use the exactsame playbooks too, rather than shellscriptingeverything.
  • 10. EXTENSIBILITY Ansible has over 250 modules included, butif you need to interface with an API we don'tsupport, writingmodules to extend the functionalityis veryeasyand straightforward.
  • 11. OTHERS HAVE ALREADY DONE THIS Tons of blogs outthere alreadyoutline how to setallof this up usingAnsible, so mostof the hard work has been done for you! Ansible's user communityhas exploded, and gettinghelp is easy.
  • 13. CONTINUOUS INTEGRATION SYSTEM Jenkins/Hudson, TravisCI, etc. (source,DevOpsReactions–http://bit.ly/1NkG1ax)
  • 14. SOURCE CONTROL Stores both the application code and your Ansible playbooks (infrastructure as data, notcode). Allcommits trigger an automatic deploymentto the staging/QA environment(s), followed byautomated testing. If the automated testingpasses, the deploymentto production can triggered byaperson or automatically.
  • 15. AUTOMATED TESTING Absolutelycriticalto continuous integration and delivery, automated testingis whatverifies your code is ok to deploy. Unittesting Integration testing Selenium, Ghost/CasperJS, etc.
  • 16. MONITORING (ALL THE THINGS!) Logand graph everything(Graphite and other popular projects make this nearlytrivial). This is how you diagnose problems with anygiven deploymentlater. (source,https://codeascraft.com/2010/12/08/track-every-release/) An excellentDigitalOcean blogon Graphite+statsd+collectd: http://bit.ly/1Gx4UM2
  • 18. BENEFITS OF CHATOPS: Everyone knows whateveryone else is doing, leadingto an increased levelof transparencyacross your teams. Because of this transparency, these actions also become self- documentingwhich helps new hires learn the ropes more quickly, especiallyif they're remote. Communication is instantaneous and more fluid, as Ops don't have to flip between emailor head off to a'war room'for issues. Time to execute actions is reduced, as there is now asingle interface to trigger actions on disparate pieces of infrastructure.
  • 21. Atlassian is averywellknown software company, with products such as JIRA, HipChatand Confluence to name afew. Uses Ansible to address whattheycallthe 'lastmile problem', or the finalstep in continuous deployment. From their blog: Developers perform continous testing/integration against feature branches After these feature branches are merged into the release branch, Bamboo (Atlassian's CI product) is used to create a build artifact(binary) Ansible is used to deploythis same artifactto each of the staging, QAand production environments in turn
  • 22. ATLASSIAN (CONT.) Advantages: 1. Promotingthe same build artifactthrough each environment ensures consistency. 2. Despite usingin-house products, their approach is very technologyagnostic and could easilybe adapted to other tools. Disadvantages: Internalteams are verysegregated, with strict separation of duties (silos) for deployments.
  • 24. RisingStack is aJavaScriptconsultancygroup, focusingon NodeJS delivery. UsingCodeShip (a3rd partyservice) and acustom web hook service to trigger Docker builds and Ansible deployments to automate their container-based approach to immutable infrastructure. (source:http://blog.risingstack.com/shipping-node-js-applications-with-docker-and-codeship/)
  • 25. RISINGSTACK (CONT.) From their blog: Commits to the master branch trigger trigger builds in the CodeShip service If alltests pass, anew docker image is created and uploaded to Docker Hub After the upload is complete, another web hook is triggered on their (custom, in-house) service which executes Ansible Ansible downloads and deploys the new docker image on each application server
  • 26. RISINGSTACK (CONT.) Advantages: Completelyautomated with no intervention required to deploy. Disadvantages: Custom service, when an off-the-shelf CI system could be used to simplifythings.
  • 28. BigPandais acompanycentered around automatingincident management, and use ChatOps and Ansible heavilyin their day to dayoperations 5 Reasons We Love UsingAnsible for Continuous Delivery- http://bit.ly/1EkbqEi Their motto is: 'Make the scariestpartof the build the easiest'.
  • 29. BIGPANDA (CONT.) Use acombination of HipChatand Hubot(called BeanBot internally) to automate ops tasks (aone-person ops team).
  • 31. GrassWire is arecentstartup builtaround crowd-sourcingfact verification in news reports. Another ChatOps follower, GrassWire deploys their software via Slack, which nativelysupports executingwebhooks remotelyand does notrequire achatbot. Use Packer to build new AMIs viaJenkins, and use Ansible to deploythose new images to production alongwith their application. UsingTerraform to build initialAWS environments, rather than CloudFormation or other tools.
  • 32. GRASSWIRE (CONT.) Their Packer integration also uses Tower, to take advantage of the provisioningcallback feature. "provisioners":[{ "type":"file", "source":"./{{user`gw_env`}}/setup_callback.sh", "destination":"/home/ec2-user/setup_callback.sh" }, {"type":"shell","inline":[ "sudochmod+x/home/ec2-user/setup_callback.sh", "echosh/home/ec2-user/setup_callback.sh|sudotee--append/etc/rc.local ]} }] Since theyalso use Tower for other tasks, theyare able to use the tower-clicommand directlyin Jenkins to simplifytheir Jenkins tasks.
  • 34. USE ANSIBLE TO BUILD YOUR CONTINUOUS DELIVERY ENVIRONMENT Roles exist(on Galaxyand generallyon Github) to build allof these components for you now. Use them to getup and running quickly.
  • 35. USE ANSIBLE FROM DAY 1 If you do anything, do itfrom Ansible. Don'tSSHto aserver, just putwhatever itis you need to do in aplaybook and run that instead.
  • 37. ATTRIBUTIONS: LEGO GreatBallContraption (GBC) Layout2012.9 https://www.youtube.com/watch?v=sUtS52lqL5w DevOps Reactions: Continuous Delivery http://bit.ly/1NkG1ax Code as CraftBlog: TrackingEveryRelease https://codeascraft.com/2010/12/08/track-every-release/ DigitalOcean Blog: An Introduction to TrackingStatistics with Graphite, StatsD, and CollectD http://bit.ly/1Gx4UM2 Atlassian Blog: PracticalContinuous Deployment: http://www.slideshare.net/tarkasteve/london-atlassian-user- group-february-2014
  • 38. ATTRIBUTIONS (CONT.): RisingStack: ShippingNode.js Applications with Docker and Codeship http://blog.risingstack.com/shipping-node-js-applications-with- docker-and-codeship/ BigPanda: #ChatOpsFTW: http://www.slideshare.net/chuparkoff/chatops- ftw 5 Reasons We Love UsingAnsible for Continuous Delivery: http://bit.ly/1EkbqEi