SlideShare una empresa de Scribd logo
1 de 18
Descargar para leer sin conexión
Mobile CI at Etsy
Daniel Schauenberg
dschauenberg@etsy.com
@mrtazz
“Every commit
should build the
mainline on an
integration
machine”
@mrtazz
GitHub Enterprise
• All code in on-premise git repos
• Development on master branch
• Pull Requests as code reviews
• command line tool
• Jenkins GitHub pull request builder plugin
@mrtazz
Code Reviews
@mrtazz
The Bobs
• > 350 LXC virtualized hosts
• 14 per physical hosts
• Spread over 3 SSDs
• Most of them attached to try
@mrtazz
Mobile CI
• 25 Mac Minis
• Runs Android and iOS toolchain
• Lint and build
• Unit and functional tests
• Automated with Chef
https://www.flickr.com/photos/callender/14012598808/
@mrtazz
Put a dashboard on it
@mrtazz
Summary and Future
• Big improvement for visibility and
testability
• Repeatable tests
• Expand testing (e.g. physical devices)
• Improve automation
• Deployment!
http://codeascraft.com
!
http://codeascraft.com/2014/02/28/etsys-journey-to-
continuous-integration-for-mobile-apps/
!
http://codeascraft.com/2013/08/09/mobile-device-lab/
!
https://www.etsy.com/careers
Mobile CI at Etsy
Daniel Schauenberg
dschauenberg@etsy.com

Más contenido relacionado

La actualidad más candente

2011.07.14 LT Doc fluxflex on JAWS-UG
2011.07.14 LT Doc fluxflex on JAWS-UG2011.07.14 LT Doc fluxflex on JAWS-UG
2011.07.14 LT Doc fluxflex on JAWS-UG
Hiro Fukami
 

La actualidad más candente (20)

VersaPay's Tools for Happyfficient Developers
VersaPay's Tools for Happyfficient DevelopersVersaPay's Tools for Happyfficient Developers
VersaPay's Tools for Happyfficient Developers
 
Concourse and Database
Concourse and DatabaseConcourse and Database
Concourse and Database
 
The Ruby workflow
The Ruby workflowThe Ruby workflow
The Ruby workflow
 
My Top 5 Favorite Gems
My Top 5 Favorite GemsMy Top 5 Favorite Gems
My Top 5 Favorite Gems
 
10 Deployments a day - A brief on extreme release protocols
10 Deployments a day - A brief on extreme release protocols10 Deployments a day - A brief on extreme release protocols
10 Deployments a day - A brief on extreme release protocols
 
Maintenance Mode: Leveraging Chef to Schedule Patching, Reboot, etc.
Maintenance Mode: Leveraging Chef to Schedule Patching, Reboot, etc.Maintenance Mode: Leveraging Chef to Schedule Patching, Reboot, etc.
Maintenance Mode: Leveraging Chef to Schedule Patching, Reboot, etc.
 
Update Smart: Use a Staging Site!
Update Smart: Use a Staging Site!Update Smart: Use a Staging Site!
Update Smart: Use a Staging Site!
 
Riak at Posterous
Riak at PosterousRiak at Posterous
Riak at Posterous
 
Data + Visualization Toronto Meetup 4: The Google Maps API
Data + Visualization Toronto Meetup 4: The Google Maps APIData + Visualization Toronto Meetup 4: The Google Maps API
Data + Visualization Toronto Meetup 4: The Google Maps API
 
Azure Pipelines
Azure PipelinesAzure Pipelines
Azure Pipelines
 
Dev-Friendly Ops
Dev-Friendly OpsDev-Friendly Ops
Dev-Friendly Ops
 
Monitoring in the cloud with Puppet
Monitoring in the cloud with PuppetMonitoring in the cloud with Puppet
Monitoring in the cloud with Puppet
 
2011.07.14 LT Doc fluxflex on JAWS-UG
2011.07.14 LT Doc fluxflex on JAWS-UG2011.07.14 LT Doc fluxflex on JAWS-UG
2011.07.14 LT Doc fluxflex on JAWS-UG
 
Continuous Integration
Continuous IntegrationContinuous Integration
Continuous Integration
 
What's New in JHipsterLand - DevNexus 2017
What's New in JHipsterLand - DevNexus 2017What's New in JHipsterLand - DevNexus 2017
What's New in JHipsterLand - DevNexus 2017
 
First Real Pull Request Ever
First Real Pull Request EverFirst Real Pull Request Ever
First Real Pull Request Ever
 
Concourse updates
Concourse updatesConcourse updates
Concourse updates
 
PuppetConf 2017: Using Puppet Enterprise APIs with PowerShell- Jason Johnson,...
PuppetConf 2017: Using Puppet Enterprise APIs with PowerShell- Jason Johnson,...PuppetConf 2017: Using Puppet Enterprise APIs with PowerShell- Jason Johnson,...
PuppetConf 2017: Using Puppet Enterprise APIs with PowerShell- Jason Johnson,...
 
My experience as Eclipse Contributor - ECE 2015
My experience as Eclipse Contributor - ECE 2015My experience as Eclipse Contributor - ECE 2015
My experience as Eclipse Contributor - ECE 2015
 
Stripe con 2021 UI stack
Stripe con 2021 UI stackStripe con 2021 UI stack
Stripe con 2021 UI stack
 

Similar a Mobile CI at Etsy

Phonegap for Engineers
Phonegap for EngineersPhonegap for Engineers
Phonegap for Engineers
Brian LeRoux
 
Transitioning Groupon to Node.js - EmpireJS 2014
Transitioning Groupon to Node.js - EmpireJS 2014Transitioning Groupon to Node.js - EmpireJS 2014
Transitioning Groupon to Node.js - EmpireJS 2014
Sean McCullough
 

Similar a Mobile CI at Etsy (20)

Dev ops for mobile apps at microsoft teams
Dev ops for mobile apps at microsoft teamsDev ops for mobile apps at microsoft teams
Dev ops for mobile apps at microsoft teams
 
Titanium Mobile
Titanium MobileTitanium Mobile
Titanium Mobile
 
Hassle-Free Continuous Integration with Real Device Testing
Hassle-Free Continuous Integration with Real Device TestingHassle-Free Continuous Integration with Real Device Testing
Hassle-Free Continuous Integration with Real Device Testing
 
Cross Platform Mobile App Development
Cross Platform Mobile App DevelopmentCross Platform Mobile App Development
Cross Platform Mobile App Development
 
Rhodes
RhodesRhodes
Rhodes
 
Instant app Intro
Instant app IntroInstant app Intro
Instant app Intro
 
Udvid din test portefølje med coded ui test og cloud load test
Udvid din test portefølje med coded ui test og cloud load testUdvid din test portefølje med coded ui test og cloud load test
Udvid din test portefølje med coded ui test og cloud load test
 
Azure functions
Azure functionsAzure functions
Azure functions
 
CodeStarではじめるRailsアプリのCodeDeploy化
CodeStarではじめるRailsアプリのCodeDeploy化CodeStarではじめるRailsアプリのCodeDeploy化
CodeStarではじめるRailsアプリのCodeDeploy化
 
The Big Easy: Native Mobile App Development with Appcelerator Titanium and Ja...
The Big Easy: Native Mobile App Development with Appcelerator Titanium and Ja...The Big Easy: Native Mobile App Development with Appcelerator Titanium and Ja...
The Big Easy: Native Mobile App Development with Appcelerator Titanium and Ja...
 
Windows Azure Mobile Services at ReBOOT Cloud Camp , Bangalore
Windows Azure Mobile Services at ReBOOT Cloud Camp , BangaloreWindows Azure Mobile Services at ReBOOT Cloud Camp , Bangalore
Windows Azure Mobile Services at ReBOOT Cloud Camp , Bangalore
 
Microsoft azure without microsoft
Microsoft azure without microsoftMicrosoft azure without microsoft
Microsoft azure without microsoft
 
DataSciencePT #27 - Fifty Shades of Automated Machine Learning
DataSciencePT #27 - Fifty Shades of Automated Machine LearningDataSciencePT #27 - Fifty Shades of Automated Machine Learning
DataSciencePT #27 - Fifty Shades of Automated Machine Learning
 
Phonegap for Engineers
Phonegap for EngineersPhonegap for Engineers
Phonegap for Engineers
 
Hacking the way you work
Hacking the way you workHacking the way you work
Hacking the way you work
 
Dev, Staging & Production Workflow with Gitify (at MODXpo 2015 in Munich)
Dev, Staging & Production Workflow with Gitify (at MODXpo 2015 in Munich)Dev, Staging & Production Workflow with Gitify (at MODXpo 2015 in Munich)
Dev, Staging & Production Workflow with Gitify (at MODXpo 2015 in Munich)
 
How to Contribute to Apache Usergrid
How to Contribute to Apache UsergridHow to Contribute to Apache Usergrid
How to Contribute to Apache Usergrid
 
How to Build Single Page HTML5 Apps that Scale
How to Build Single Page HTML5 Apps that ScaleHow to Build Single Page HTML5 Apps that Scale
How to Build Single Page HTML5 Apps that Scale
 
Transitioning Groupon to Node.js - EmpireJS 2014
Transitioning Groupon to Node.js - EmpireJS 2014Transitioning Groupon to Node.js - EmpireJS 2014
Transitioning Groupon to Node.js - EmpireJS 2014
 
Build Nodejs APIs using Serverless
Build Nodejs APIs  using Serverless Build Nodejs APIs  using Serverless
Build Nodejs APIs using Serverless
 

Más de Daniel Schauenberg

Más de Daniel Schauenberg (7)

Human Factors and PostMortems
Human Factors and PostMortemsHuman Factors and PostMortems
Human Factors and PostMortems
 
Deploy, Collaborate and Listen
Deploy, Collaborate and ListenDeploy, Collaborate and Listen
Deploy, Collaborate and Listen
 
Scaling Deployment at Etsy
Scaling Deployment at EtsyScaling Deployment at Etsy
Scaling Deployment at Etsy
 
Feature Flagging your Infrastructure for Fun and Profit
Feature Flagging your Infrastructure for Fun and ProfitFeature Flagging your Infrastructure for Fun and Profit
Feature Flagging your Infrastructure for Fun and Profit
 
Scaling Deployment at Etsy
Scaling Deployment at EtsyScaling Deployment at Etsy
Scaling Deployment at Etsy
 
StatsD Workshop Monitorama 2013
StatsD Workshop Monitorama 2013StatsD Workshop Monitorama 2013
StatsD Workshop Monitorama 2013
 
Etsy chef-workflow
Etsy chef-workflowEtsy chef-workflow
Etsy chef-workflow
 

Último

Hyatt driving innovation and exceptional customer experiences with FIDO passw...
Hyatt driving innovation and exceptional customer experiences with FIDO passw...Hyatt driving innovation and exceptional customer experiences with FIDO passw...
Hyatt driving innovation and exceptional customer experiences with FIDO passw...
FIDO Alliance
 
“Iamnobody89757” Understanding the Mysterious of Digital Identity.pdf
“Iamnobody89757” Understanding the Mysterious of Digital Identity.pdf“Iamnobody89757” Understanding the Mysterious of Digital Identity.pdf
“Iamnobody89757” Understanding the Mysterious of Digital Identity.pdf
Muhammad Subhan
 

Último (20)

Simplified FDO Manufacturing Flow with TPMs _ Liam at Infineon.pdf
Simplified FDO Manufacturing Flow with TPMs _ Liam at Infineon.pdfSimplified FDO Manufacturing Flow with TPMs _ Liam at Infineon.pdf
Simplified FDO Manufacturing Flow with TPMs _ Liam at Infineon.pdf
 
TopCryptoSupers 12thReport OrionX May2024
TopCryptoSupers 12thReport OrionX May2024TopCryptoSupers 12thReport OrionX May2024
TopCryptoSupers 12thReport OrionX May2024
 
Intro to Passkeys and the State of Passwordless.pptx
Intro to Passkeys and the State of Passwordless.pptxIntro to Passkeys and the State of Passwordless.pptx
Intro to Passkeys and the State of Passwordless.pptx
 
JavaScript Usage Statistics 2024 - The Ultimate Guide
JavaScript Usage Statistics 2024 - The Ultimate GuideJavaScript Usage Statistics 2024 - The Ultimate Guide
JavaScript Usage Statistics 2024 - The Ultimate Guide
 
Collecting & Temporal Analysis of Behavioral Web Data - Tales From The Inside
Collecting & Temporal Analysis of Behavioral Web Data - Tales From The InsideCollecting & Temporal Analysis of Behavioral Web Data - Tales From The Inside
Collecting & Temporal Analysis of Behavioral Web Data - Tales From The Inside
 
Design and Development of a Provenance Capture Platform for Data Science
Design and Development of a Provenance Capture Platform for Data ScienceDesign and Development of a Provenance Capture Platform for Data Science
Design and Development of a Provenance Capture Platform for Data Science
 
Intro in Product Management - Коротко про професію продакт менеджера
Intro in Product Management - Коротко про професію продакт менеджераIntro in Product Management - Коротко про професію продакт менеджера
Intro in Product Management - Коротко про професію продакт менеджера
 
AI mind or machine power point presentation
AI mind or machine power point presentationAI mind or machine power point presentation
AI mind or machine power point presentation
 
The Zero-ETL Approach: Enhancing Data Agility and Insight
The Zero-ETL Approach: Enhancing Data Agility and InsightThe Zero-ETL Approach: Enhancing Data Agility and Insight
The Zero-ETL Approach: Enhancing Data Agility and Insight
 
State of the Smart Building Startup Landscape 2024!
State of the Smart Building Startup Landscape 2024!State of the Smart Building Startup Landscape 2024!
State of the Smart Building Startup Landscape 2024!
 
ERP Contender Series: Acumatica vs. Sage Intacct
ERP Contender Series: Acumatica vs. Sage IntacctERP Contender Series: Acumatica vs. Sage Intacct
ERP Contender Series: Acumatica vs. Sage Intacct
 
Introduction to FDO and How It works Applications _ Richard at FIDO Alliance.pdf
Introduction to FDO and How It works Applications _ Richard at FIDO Alliance.pdfIntroduction to FDO and How It works Applications _ Richard at FIDO Alliance.pdf
Introduction to FDO and How It works Applications _ Richard at FIDO Alliance.pdf
 
How we scaled to 80K users by doing nothing!.pdf
How we scaled to 80K users by doing nothing!.pdfHow we scaled to 80K users by doing nothing!.pdf
How we scaled to 80K users by doing nothing!.pdf
 
WebRTC and SIP not just audio and video @ OpenSIPS 2024
WebRTC and SIP not just audio and video @ OpenSIPS 2024WebRTC and SIP not just audio and video @ OpenSIPS 2024
WebRTC and SIP not just audio and video @ OpenSIPS 2024
 
Hyatt driving innovation and exceptional customer experiences with FIDO passw...
Hyatt driving innovation and exceptional customer experiences with FIDO passw...Hyatt driving innovation and exceptional customer experiences with FIDO passw...
Hyatt driving innovation and exceptional customer experiences with FIDO passw...
 
Working together SRE & Platform Engineering
Working together SRE & Platform EngineeringWorking together SRE & Platform Engineering
Working together SRE & Platform Engineering
 
How Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdf
How Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdfHow Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdf
How Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdf
 
Long journey of Ruby Standard library at RubyKaigi 2024
Long journey of Ruby Standard library at RubyKaigi 2024Long journey of Ruby Standard library at RubyKaigi 2024
Long journey of Ruby Standard library at RubyKaigi 2024
 
WebAssembly is Key to Better LLM Performance
WebAssembly is Key to Better LLM PerformanceWebAssembly is Key to Better LLM Performance
WebAssembly is Key to Better LLM Performance
 
“Iamnobody89757” Understanding the Mysterious of Digital Identity.pdf
“Iamnobody89757” Understanding the Mysterious of Digital Identity.pdf“Iamnobody89757” Understanding the Mysterious of Digital Identity.pdf
“Iamnobody89757” Understanding the Mysterious of Digital Identity.pdf
 

Mobile CI at Etsy