Changes

Jump to: navigation, search

Tree Rules

725 bytes added, 16:18, 18 July 2017
no edit summary
For comm-central tree rules, [[Tree_Rules/comm-central|see this page]].
Not sure which Firefox version is on which branch today? See [[RapidRelease/Calendar|Rapid Release Calendar]].
Looking to add a new platform/job type to Treeherder? See our [[Sheriffing/Job_Visibility_Policy|Job Visibility Policy]].
== Integration Branches, or the "Normal" workflow == [[httpsFile://treeherderLand patch - go home.mozilla.org/#/jobs?repo=mozilla-central mozilla-centraljpg|300px|right]] (Nightly channel) ==
* In order The following rules apply to increase integration branches managed by the reliability of our primary repository[[Sheriffing|Sheriffs]], direct pushes to mozilla-central namely [https://groups.googletreeherder.com/d/topic/mozilla.dev.tree-managementorg/V1zZ3JlFpzI#/discussion must now] only be for one of the following reasons:** Merging from an integration/team/project repository (there is no restriction on who may make these merges) [''ajobs?repo=merge''autoland autoland]. ** Automated blocklist / HSTS preload list updates [''a={blocklist-update,hsts-update}''].** For the resolution (ie: backout or follow-up fix) of critical regressions (eg: top-crashers or other major functional regression) that will result in a Nightly respin or must make the imminent scheduled Nightly at all costs [''a={backout,topcrasher,respin,...}'']. ** Anything else for which common sense (or asking in #developers) says is an appropriate reason for a direct landing on mozilla-central [''a=something_descriptive'']. * If your patch is eligible for direct-landing on mozilla-central:** Use the ''a=reason'' examples given above, to bypass the Mercurial hook used to prevent accidental pushes. Note: That whilst we are using the "a=" syntax (since that's all the hook supports for now), this is unrelated to the "release-driver approval request" process - so please do not request approval from them in Bugzilla.*** Note if merging into mozilla-central, and your push didn't generate a merge commit (and so you have nowhere to put the "a=merge" to get past the hook), then either temporarily set the tree state to OPEN, try merging a different integration repo first (which may need a merge commit), or add an empty mq commit on top with an appropriate commit message.** Changes must meet the [https://developertreeherder.mozilla.org/En#/Developer_Guide/Committing_Rules_and_Responsibilities general checkin rules].** You must check the tree is green before pushing, notify the sheriffs in #developers and then watch mozilla-central for failures.** Set the ''Target Milestone'' field in Bugzilla to the current Nightly version after landing a bug fix on jobs?repo=mozilla-central.* All other changes must instead land via one of the integration branches and will then be merged into inbound mozilla-central once green (these merges occur typically 1-2 times a day on the last complete green push).* Please ask in #developers on [[IRC]inbound] if you have questions.
== Integration Branches =[https://treeherder.mozilla.org/#/jobs?repo=autoland autoland] ===If you are using [http://mozilla-version-control-tools.readthedocs.io/en/latest/mozreview.html MozReview] to post and review patches, you can also use the tool to automatically land those patch to the autoland repository. This is the preferred method of landing Mozilla code because, in almost all cases, it involves the least work for humans, including you.
Please see the documentation on [[Filehttp:Land patch //mozilla-version-control- go hometools.jpg|300px|right]readthedocs.io/en/latest/mozreview/autoland.html Landing Commits with Autoland]for details on how to use autoland.
The following rules apply to integration branches managed by the [[sheriff]]s, including [https://treeherder.Sheriffs will merge autoland into mozilla.org/#/jobs?repo=mozilla-inbound mozilla-inbound], [https://treeherder.mozilla.org/#/jobs?repo=b2g-inbound b2g-inbound], and [https://treeherder.mozilla.org/#/jobs?repo=fx-team fx-team]central approximately daily.
=== [https://treeherder.mozilla.org/#/jobs?repo=mozilla-inbound mozilla-inbound] ===
If you're not using [http://mozilla-version-control-tools.readthedocs.io/en/latest/mozreview.html MozReview], or need to have more control over the order or timing of your commits (touching multiple systems, etc), you can still land code the manually into the mozilla-inbound repository. These general rules apply:
* '''All changes''' must meet the [https://developer.mozilla.org/En/Developer_Guide/Committing_Rules_and_Responsibilities general checkin rules], except you do not need to watch the tree after pushing.
* These branches are mozilla-inbound is merged into mozilla-central approximately daily.* Please read '''[[Tree Rules/Integration| the integration rules]]''' for commit procedures and the list of sheriffs.
* Ask in #developers on [[IRC]] if you have any questions.
 
== [https://treeherder.mozilla.org/#/jobs?repo=mozilla-central mozilla-central] (Nightly channel) ==
 
'''<font color="orange">APPROVAL REQUIRED</font>'''
 
In order to increase the reliability of our primary repository, direct pushes to mozilla-central [https://groups.google.com/d/topic/mozilla.dev.tree-management/V1zZ3JlFpzI/discussion must now] only be for one of the following reasons:
* Merging from an integration/team/project repository (there is no restriction on who may make these merges) [''a=merge''].
* Automated blocklist / HSTS preload list updates [''a={blocklist-update,hsts-update}''].
* For the resolution (ie: backout or follow-up fix) of critical regressions (eg: top-crashers or other major functional regression) that will result in a Nightly respin or must make the imminent scheduled Nightly at all costs [''a={backout,topcrasher,respin,...}''].
** Anything else for which common sense (or asking in #developers) says is an appropriate reason for a direct landing on mozilla-central [''a=something_descriptive''].
 
If your patch is eligible for direct-landing on mozilla-central:
* Use the ''a=reason'' examples given above, to bypass the Mercurial hook used to prevent accidental pushes. Note: That whilst we are using the "a=" syntax (since that's all the hook supports for now), this is unrelated to the "release-driver approval request" process - so please do not request approval from them in Bugzilla.
** Note if merging into mozilla-central, and your push didn't generate a merge commit (and so you have nowhere to put the "a=merge" to get past the hook), then either temporarily set the tree state to OPEN, try merging a different integration repo first (which may need a merge commit), or add an empty mq commit on top with an appropriate commit message.
* Changes must meet the [https://developer.mozilla.org/En/Developer_Guide/Committing_Rules_and_Responsibilities general checkin rules].
* You must check the tree is green before pushing, notify the sheriffs in #developers and then watch mozilla-central for failures.
* Set the ''Target Milestone'' field in Bugzilla to the current Nightly version after landing a bug fix on mozilla-central.
 
All other changes must instead land via one of the integration branches and will then be merged into mozilla-central once green (these merges occur typically 1-2 times a day on the last complete green push).
 
Please ask in #developers on [[IRC]] if you have questions.
== [https://treeherder.mozilla.org/#/jobs?repo=mozilla-aurora mozilla-aurora] ==
* Changes to the release branch are limited to urgent "chemspills" like zero-day security vulnerabilities and other unplanned emergencies. Any changes to this branch will be directly overseen by the [[Release_Management|release manager]] team. They are also subject to the same restrictions as [[#mozilla-beta]], including string freeze and UUID freeze.
== [https://treeherder.mozilla.org/#/jobs?repo=mozilla-b2g34_v2_1 esr52 mozilla-b2g34_v2_1] (and other B2G branches) == '''<font color="orange">APPROVAL REQUIRED</font>''' * '''All changes''' must meet the [https://developer.mozilla.org/En/Developer_Guide/Committing_Rules_and_Responsibilities general checkin rules]. You must check the tree before pushing, and watch the tree for failures after pushing.* See [[Release Management/B2G_Landing]]. == [https://treeherder.mozilla.org/#/jobs?repo=mozilla-esr31 mozilla-esr31esr52] (Firefox 3152.x.y ESR) ==
'''<font color="orange">APPROVAL REQUIRED</font>'''
* See [[Release Management/ESR Landing Process]].
Canmove, confirm
2,850
edits

Navigation menu