CloudServices/Github
GitHub for Cloud Services Engineers
Aside from some legacy projects in mercurial, all of the code for the Cloud Services team lives in GitHub. There are over a thousand Mozilla-related repositories in total, but no over-arching corporate policy on How Mozilla Should Use GitHub, so it can easily get a bit confusing - this document exists to help you make some sense of it all.
It's all guidelines, not actual rules. Do what works, but please review the below as well as the top-level Github info page.
Organizations
Cloud Services code is spread across two github organisations:
- The generic "mozilla" organization: https://github.com/mozilla
- A specific "mozilla-services" organization: https://github.com/mozilla-services
What code lives in which org is essentially a historical artifact. For new repositories, a simple rough guideline is:
- Projects that are mostly infrastructure-related, or are heavily specific to Mozilla's internal needs, should go in "mozilla-services". Examples include Circus and Heka as well as various puppet configuration repos.
- Projects that will be of more general interest to the Mozilla community should go in "mozilla". Examples include the Persona and Firefox Accounts application servers.
You will not have to look hard to find counter-examples to the above. Don't fret. Just do what you think is sensible.
Teams and Permissions
Security
Make sure you have two-factor auth enabled on your account. This goes double if you're an Owner.