Confirmed users
729
edits
No edit summary |
No edit summary |
||
Line 1: | Line 1: | ||
__TOC__ | __TOC__ | ||
= Mercurial-based trees = | |||
== Making the next build be a clobber == | |||
Use this if the dependency system breaks (but please also file a bug about fixing the dependency system!) | |||
Mozilla committers have access to the [https://build.mozilla.org/clobberer clobberer tool] for build, nightly, leak, and unit test builds. [http://atlee.ca/blog/2009/02/09/clobbering-the-trees/ read more on catlee's blog]. (added in {{bug|432236}}, to be documented better in {{bug|478683}}) | |||
== Stopping a build that is doomed == | |||
... | |||
== Forcing a new nightly build == | |||
... | |||
= CVS-based trees = | |||
In order to reduce interruptions and allow developers to clobber Tinderbox builds, we've deployed what we're calling "CLOBBER support" to the Mozilla Build Farm. | In order to reduce interruptions and allow developers to clobber Tinderbox builds, we've deployed what we're calling "CLOBBER support" to the Mozilla Build Farm. | ||
This allows developers to request clobber builds on various Tinderboxen. | This allows developers to request clobber builds on various Tinderboxen. | ||
Common reasons for clobbers include: | Common reasons for clobbers include: | ||
Line 13: | Line 29: | ||
'''NOTE''': clobbering a tinderbox will also clobber the corresponding unit test machine, i.e. you do '''*not*''' also have to clobber the buildbot machine. This is useful when code changes (e.g. dependencies) require all similar tinderboxen to be restarted. It is less useful when a single machine is simply hung. | '''NOTE''': clobbering a tinderbox will also clobber the corresponding unit test machine, i.e. you do '''*not*''' also have to clobber the buildbot machine. This is useful when code changes (e.g. dependencies) require all similar tinderboxen to be restarted. It is less useful when a single machine is simply hung. | ||
= To clobber a Tinderbox = | == To clobber a Tinderbox == | ||
1. ''After'' your code goes in... | 1. ''After'' your code goes in... | ||
Line 32: | Line 48: | ||
cvs status: Examining . | cvs status: Examining . | ||
=================================================================== | =================================================================== | ||
File: mozconfig | File: mozconfig Status: Up-to-date | ||
Working revision: 1.2.6.1 | Working revision: 1.2.6.1 | ||
Repository revision: 1.2.6.1 /cvsroot/mozilla/tools/tinderbox-configs/firefox/win32/mozconfig,v | Repository revision: 1.2.6.1 /cvsroot/mozilla/tools/tinderbox-configs/firefox/win32/mozconfig,v | ||
Sticky Tag: | Sticky Tag: MOZILLA_1_8_BRANCH (branch: 1.2.6) | ||
Sticky Date: | Sticky Date: (none) | ||
Sticky Options: (none) | Sticky Options: (none) | ||
=================================================================== | =================================================================== | ||
File: tinder-config.pl | File: tinder-config.pl Status: Up-to-date | ||
Working revision: 1.2.10.1 | Working revision: 1.2.10.1 | ||
Repository revision: 1.2.10.1 /cvsroot/mozilla/tools/tinderbox-configs/firefox/win32/tinder-config.pl,v | Repository revision: 1.2.10.1 /cvsroot/mozilla/tools/tinderbox-configs/firefox/win32/tinder-config.pl,v | ||
Sticky Tag: | Sticky Tag: MOZILLA_1_8_BRANCH (branch: 1.2.10) | ||
Sticky Date: | Sticky Date: (none) | ||
Sticky Options: (none) | Sticky Options: (none) | ||
End: Mon Feb 12 17:41:40 2007 | End: Mon Feb 12 17:41:40 2007 | ||
Line 69: | Line 85: | ||
7. Next build should be a clobber build; if it's not, please stop by <tt>#build</tt> to let us know, so we can track down why it didn't work | 7. Next build should be a clobber build; if it's not, please stop by <tt>#build</tt> to let us know, so we can track down why it didn't work | ||
= To clobber a unit test machine = | == To clobber a unit test machine == | ||
Same as the above for tinderbox, but the CLOBBER file you need to create/update lives in a different directory in CVS. Check out the following module: | Same as the above for tinderbox, but the CLOBBER file you need to create/update lives in a different directory in CVS. Check out the following module: | ||
Line 85: | Line 101: | ||
= Caveats = | = Caveats = | ||
Obviously, clobber builds take longer than depend builds, so '''please only use this functionality when necessary;''' also, '''please coordinate clobbering on IRC, so builds aren't clobbered multiple times for the same reason.''' To help mitigate, it might be useful to have a sheriff check in a clobber request or in the case of a | Obviously, clobber builds take longer than depend builds, so '''please only use this functionality when necessary;''' also, '''please coordinate clobbering on IRC, so builds aren't clobbered multiple times for the same reason.''' To help mitigate, it might be useful to have a sheriff check in a clobber request or in the case of a checkin that you know will break Tinderbox, the committer. | ||
Due to deficiencies in Tinderbox, some Tinderboxen will not comply with clobber requests. Tinderboxen that are likely to not obey are those which do not produce nightly builds of any kind (<tt>fxdbug-win32-tbox</tt>, for example). | Due to deficiencies in Tinderbox, some Tinderboxen will not comply with clobber requests. Tinderboxen that are likely to not obey are those which do not produce nightly builds of any kind (<tt>fxdbug-win32-tbox</tt>, for example). | ||
We are currently working through making it so all Tinderboxen pay attention to clobber requests. If you find one that does not, please let us know, so we can add it to the migration list. | We are currently working through making it so all Tinderboxen pay attention to clobber requests. If you find one that does not, please let us know, so we can add it to the migration list. | ||