Lifecycle of a Release Engineering bug
Like most other engineering groups at Mozilla, Release Engineering uses Bugzilla to track most of the work we do. Our bugs and patches use many of the same flags as a Firefox bug, so it's no surprise that many people expect our bugs to be like Firefox bugs in other ways. I've noticed a few instances of confusion recently, so I'd like to try to clear things up a little bit by talking about what's different about ours. In order to understand our bugs, a brief overview of our repositories is required. Unlike Firefox, RelEng hosts its code in a number of different Mercurial repositories. Most of these repositories have (or should have) a "production" branch in addition to the "default" one. Our production systems (Buildbot masters/slaves, AWS management machines, signing servers, etc.) track the production branches of our repositories. This is important for a few reasons:
- Some patches can depend on other patches in a different repository
- Some patches need to be deployed at specific times
- Some systems cannot automatically use new code
- Every commit has the potential to close the trees