transforming propertyguru's delivery pipeline
Embed Size (px)
DESCRIPTION
Continuous delivery implementation in PropertyGuru Pte Ltd. Presented at Singapore DevOps Meetup: http://www.meetup.com/devops-singapore/events/195469632/TRANSCRIPT
Transforming PropertyGuru Delivery Pipeline Dwi Sasongko Supriyadi
CD Lead @ PropertyGuru Pte Ltd Who are we? 4 main websites in 4
countries 16 mobile apps! Development team in 3 countries (~40
engineers) 9 scrum teams How Do We Do It? Two weeks sprint
development Sprint deployment + (almost) unlimited Ad Hoc
deployment Technology PHP5, MySQL, Nginx + php-fpm, memcached,
redis, sphinx, elasticsearch, beanstalk, MongoDB, puppet, jenkins,
vagrant, git, ant, Ubuntu, CentOS, AWS ~200 servers: web, worker,
DB The Past One big legacy app (~7 years old) No test Production
test, then pray Apache + PHP + MySQL CentOS 5.x, CentOS 6.x
Deployment as we knew it Legacy Application Legacy Deployment
Problem? System Likely in unknown state Manual ad-hoc changes
Application Lack of test, lack of confidence Hard to extend, hard
to maintain The Challenge We want to scale! Our Vision System
Infrastructure as code Automate as much as possible Single source
of truth Similar setup across environment Application SOA TDD, BDD
Unit Test Selenium based test CI CD Continuous Delivery
http://devopsreactions.tumblr.com/post/90542814379/continuous-delivery
SOA Micro Services Everything is service Service is a single
application Contract based development SOA SOA Many applications
... Hard to manage dependency Deployment complexity Im scared . SOA
- Set of Deployable Version Set of Deployable Version Convention
Versioning API instead of introducing BC break Self discipline
Dependency Management Release early, break early Release Cycle
Promote a set to the next stage as soon as it passes test criterias
Deployable Version SoDV in integration SoDV in staging/production
deployment Pipeline Deployment What About Now Setup and Teardown
production server with single command Launch instance, provision,
deploy latest code, run automation test, promote to production
Deploy multiple times a day What We Want To Do Next? Bring the
deployment power to the business Word of Wisdom Continuous Delivery
is not just technical thing, but also mentality We learned how to
work together as a big team Were Hiring! [email protected]
Glossary Images taken from here:
http://beyondplm.com/wp-content/uploads/2012/04/complexity2.jpg
http://psdhunter.com/psds/6754-big-red-push-button-free-photoshop-download.png
http://uncrate.com/p/2012/06/fitbit-aria-scale-xl.jpg
http://upload.wikimedia.
org/wikipedia/commons/thumb/a/aa/StateLibQld_1_88816_Aircraft_mechanics_working_on_an_Avro_
Anson_Mk1_plane%2C_Archerfield%2C_ca._1942.jpg/512px-
StateLibQld_1_88816_Aircraft_mechanics_working_on_an_Avro_Anson_Mk1_plane%
2C_Archerfield%2C_ca._1942.jpg