Services/Process/MergingBetweenBranches

< Services‎ | Process
Revision as of 16:33, 5 May 2011 by Rnewman (talk | contribs) (Adding status-firefoxN=fixed note.)

Click here for more information on the Code Review Process

Merging feature branches to services-central

  • All changes must be reviewed and have appropriate test coverage
  • All changes requiring additional testing (read: QA) must have a documented test plan in place
  • Any features requiring server-side deployments/changes must wait until those pieces are live on stage before merging

Merging from mozilla-central to services-central

  • Pull last green changeset into local services-central, merge
  • Push to services-central (Does services-ops need to do this?)
  • Verify green build in tbpl, including TPS (formerly Crossweave) — wait for the email.
  • Perform frequently!

Merging from services-central to mozilla-central

  • Ensure all required changes have landed and the tree is green
  • Merge last green changeset from m-c to services-central (see above)
  • Ensure everything stays green, including TPS (formerly Crossweave)
  • Hand off tinderbox builds to QA
  • Once QA signs off, merge the signed off changeset (not necessarily the services-central tip anymore) to mozilla-central
  • RESOLVE FIX corresponding bugs in Bugzilla, setting appropriate Target Milestone (e.g., mozilla5 if the destination m-c will become Firefox 5)
  • When a change reaches mozilla-aurora for a particular release, set the relevant "status-firefoxN" flag to "fixed".

Note that the last two steps also apply for transplanted changes that are independently landed on mozilla-central or mozilla-aurora (e.g., a small, limited impact fix for a user-impacting bug).

Timing

  • Hand off to QA on Monday
  • QA smoketests Monday + Tuesday
  • Merge on Tuesday

Open questions:

  • Is there any situation in which we would accede to a release driver's request for a merge? With or without urgent QA smoketesting?
  • What about small fixes that are desirable for m-c?
    • Land on m-c and merge
    • Land on s-c and transplant
    • Do we need any process around transplanting?