CloudServices/CloudPlatform
From MozillaWiki
Contents
Overview
We need infrastructure to avoid repetitive code, making common things easy, and enable developers to jump between projects. Let's build a platform that makes us more efficient and faster at getting our products to users.
Project Standards
A common set of base conventions, style guide, integration points across Cloud Services to make it easier to switch between projects, test, and deploy.
- DevOps,Node,Python,Go
- Proposed Style Guide
Frameworks
An example of a RelEng/ATeam created: http://mozbase.readthedocs.org/en/latest/
Could there be some basic libraries that we use for Cloud Services?
- Heka, cldsvc standard - https://github.com/mozilla-services/heka
- Videur, nginx abuse rules - https://github.com/mozilla/videur
- Loads 2.0, run test at load scale - https://github.com/loads/loads-broker
- Vaurien, fuzz a server - http://vaurien.readthedocs.org/en/1.8/
- mozbase for pyramid - https://github.com/mozilla-services/mozservices
Deployment Tools
Bucketed Deployment and A/B Test Services
- Generalized Service (for non-web apps) https://wiki.mozilla.org/CloudServices/SoftRelease
- JS approach, for web applications: https://github.com/dannycoates/abatar
Ops
- Currently docker is required for Loads 2.0 load testing
- CldSvcs Ops has a solution for build, test, load-test, deploy
Project Furious
How do we get code from a dev into production faster at high quality?
- How can we get from a build, full testing, load testing, deploy to small group, compare metrics, then throttle to all users with minimal human interaction?
- Thoughts: https://etherpad.mozilla.org/furious