Continuous delivery of configuration management with Android repo script
1. Ansible London
May 2015
Jiri Tyr
(jiri.tyr@gmail.com, @JiriTyr)
Continuous delivery of configuration
management with Android repo script
2. About me
● Linux system engineer with dev background
■ 10+ years of experience (2y Puppet, 6m Ansible)
■ https://github.com/jtyr
● Working for Pico Global Ltd
■ European branch of Pico Quantitative Trading LLC
■ Financial technology services & broker dealer
■ Business partner of Goldman Sachs, JPM, UBS and
Wells Fargo
■ https://github.com/picotrading
3. Continuous delivery
● Release valuable software in short cycles reliably at any
time
● That would not work without
■ continuous integration
■ automated testing
■ deployment pipeline
● Configuration management is part of the software
development
4. CD for CM
● Shifting configuration across all environments towards
production
■ Role1:
★ dev - t29
★ qa - t22
★ stg - t18
★ prd - t15
● How do we manage this?
● Environment consists of many roles (Git repos)
● At one point in time, each role has a different version in
each of the environments
■ Role2:
★ dev - t61
★ qa - t58
★ stg - t42
★ prd - t39
5. ● Management tool built on top of Git
Android repo script
● Automates parts of the Android development workflow
● AOSP is built of hundreds of Git repos
● Download files from multiple repositories into one local
working directory using a manifest file
● Supports Gerrit - code review system
9. What next?
● Create a tool to manage environments using Android repo
script and Git
■ add/modify/delete project
■ tag roles
■ compare tags in environments