DXR is a code search and navigation tool aimed at making sense of large projects. It supports full-text and regex searches as well as structural queries.

Untracked file

Line Code
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273

	<TITLE>Tinderbox 2.0</TITLE>

LINK="#0000EE" VLINK="#551A8B" ALINK="#FF0000"
<MAP NAME="banner">
<AREA SHAPE=RECT COORDS="300,11,558,44" ALT="" HREF="http://www.mozilla.org/">
ALT="" BORDER=0 USEMAP="#banner"
WIDTH="600" HEIGHT="58" VSPACE="0" HSPACE="0"></TD></TR></TABLE>
<TR><TD NOWRAP COLSPAN=2><A HREF="../.././"><B> The Mozilla<BR>Organization</B></A></TD></TR>
<TR><TD></TD><TD NOWRAP><A HREF="../../mozorg.html"> At A Glance</A></TD></TR>
<TR><TD></TD><TD NOWRAP><A HREF="../../feedback.html"> Feedback</A></TD></TR>
<TR><TD></TD><TD NOWRAP><A HREF="../../get-involved.html"> Get Involved</A></TD></TR>
<TR><TD></TD><TD NOWRAP><A HREF="../../community.html"> Newsgroups</A></TD></TR>
<TR><TD></TD><TD NOWRAP><A HREF="../../MPL/"> License Terms</A></TD></TR>
<TR><TD></TD><TD NOWRAP><A HREF="http://www.mozilla.org/newsbot/"> Newsbot</A></TD></TR>
<TR><TD HEIGHT="3"></TD></TR>
<TR><TD NOWRAP COLSPAN=2><A HREF="../../docs/"><B> Developer Docs</B></A></TD></TR>
<TR><TD></TD><TD NOWRAP><A HREF="../../roadmap.html"> Roadmap</A></TD></TR>
<TR><TD></TD><TD NOWRAP><A HREF="../../projects/"> Projects</A></TD></TR>
<TR><TD></TD><TD NOWRAP><A HREF="../../ports/"> Ports</A></TD></TR>
<TR><TD></TD><TD NOWRAP><A HREF="../../owners.html"> Module Owners</A></TD></TR>
<TR><TD></TD><TD NOWRAP><A HREF="../../hacking/"> Hacking</A></TD></TR>
<TR><TD></TD><TD NOWRAP><A HREF="../../source.html"> Get the Source</A></TD></TR>
<TR><TD></TD><TD NOWRAP><A HREF="../../build/"> Build It</A></TD></TR>
<TR><TD HEIGHT="3"></TD></TR>
<TR><TD NOWRAP COLSPAN=2><A HREF="../../quality/"><B> Testing</B></A></TD></TR>
<TR><TD></TD><TD NOWRAP><A HREF="../../releases/"> Download</A></TD></TR>
<TR><TD></TD><TD NOWRAP><A HREF="../../quality/help/bug-form.html"> Report A Bug</A></TD></TR>
<TR><TD></TD><TD NOWRAP><A HREF="../../bugs/"> Bugzilla</A></TD></TR>
<TR><TD></TD><TD NOWRAP><A HREF="../../quality/bug-writing-guidelines.html"> Bug Writing</A></TD></TR>
<TR><TD HEIGHT="3"></TD></TR>
<TR><TD NOWRAP COLSPAN=2><A HREF="../../tools.html"><B> Tools</B></A></TD></TR>
<TR><TD></TD><TD NOWRAP><A HREF="http://lxr.mozilla.org/seamonkey/"> View Source</A></TD></TR>
<TR><TD></TD><TD NOWRAP><A HREF="http://tinderbox.mozilla.org/showbuilds.cgi?tree=SeaMonkey"> Tree Status</A></TD></TR>
<TR><TD></TD><TD NOWRAP><A HREF="http://bonsai.mozilla.org/cvsquery.cgi?treeid=default&amp;module=SeaMonkeyAll&amp;branch=HEAD&amp;branchtype=match&amp;dir=&amp;file=&amp;filetype=match&amp;who=&amp;whotype=match&amp;sortby=Date&amp;hours=2&amp;date=day&amp;mindate=&amp;maxdate=&amp;cvsroot=%2Fcvsroot"> New Checkins</A></TD></TR>
<TR><TD></TD><TD NOWRAP><A HREF="http://bugzilla.mozilla.org/"> Submit A Bug</A></TD></TR>
<TR><TD HEIGHT="3"></TD></TR>
<TR><TD NOWRAP COLSPAN=2><A HREF="../../faq.html"><B> FAQ</B></A></TD></TR>
<TR><TD NOWRAP COLSPAN=2><A HREF="http://www.mozilla.org/search.html"><B> Search</B></A></TD></TR>

    <H1 ALIGN=CENTER>Tinderbox 2.0</h1>

<h3 align=center>
Development Monitoring System <br>
rewrite by <a href="mailto:kestes@walrus.com">Ken Estes</a></h3>

    <p>This document describes a rewrite of the original <a href="http://www.mozilla.org/tinderbox.html">Tinderbox 1.0</a> development tool.

    <p>Tinderbox is the first program to allow developers and
    management to see at a glance what is currently going on in all
    aspects of the development process.  The Tinderbox server prepares
    HTML pages which display the history of many different development
    variables.  It shows at a glance the history of: whether the HEAD
    branch of the source code builds and passes all automated tests,
    who has checked code changes into the version control system,
    whether the source tree is open or closed and when the state of
    the tree last changed, what trouble tickets have been closed,
    notices and messages posted by the developers or project manager.
    <p>The new Tinderbox code is highly configurable and will allow
    you to work with many different types of version control or bug
    tracking systems.  It is relatively easy to add new modules which
    work with other systems. It is also easy to configure Tinderbox to
    run without the displays that your organizations does not need or
    to run with duplicate modules if the need arises.
    <P><B>Here is a description of the main Tinderbox subsystems:</B>
      <p><li> Tinderbox is an automatic build master.  The build module
      allows an organization to dispense with the dedicated employee
      whose title is 'build master'.  A fleet of dedicated build
      machines continually run the compilations and any automated
      tests of the latest source code.  Developers can see at a glance
      whether the most recent changes in the version control system
      will break the build of the product, break any automated style
      (lint) checks, cause the automated unit tests to fail or cause
      the code coverage of the unit tests to drop below a required
      minimum.  These builds are not run daily as with most
      organizations but are run continually for immediate feedback.
      Each developer can monitor whether his changes break the
      automated build/tests and each developer can see at a glance
      which developer caused an problems which are being reported.
      The build/test logs are available at the click of a web link so
      that developers need not have access to the build/test
      machine/architecture to fix any compilation/test problems.
      Tinderbox allows the build organization to push back the
      responsibility of ensuring the code builds to the developer who
      just checked in the code.  Anyone with a browser can see if the
      build failed and read what the error message was.  Tinderbox
      does not prevent any development from occurring.  Should it ever
      be necessary to allow development to proceed even though the
      tests are broken it is easy for developers to ignore the reports
      of failing tests and to configure Tinderbox to not display any
      tests which are not currently being monitored.  Tinderbox does
      not enforce any development methodology it only displays the
      current 'state of development'.
      <p><li> Tinderbox displays the history of recent changes to the
      code stored in a Version Control system.  This allows developers
      to see at a glance which portions of the code are being changed
      and who is changing the code.  It is no longer necessary to
      configure the Version Control system to mail each developer when
      changes are occurring.  Any developer who needs to know what is
      going on with the sources can see at a glance what changes were
      made.  When the builds/tests fail it is easy to figure out what
      person is responsible for the problem.  The person who "broke
      the build" is any person who did a checkin between the last good
      build and the broken build.  This quickly narrows the possible
      suspects and allows for transparent accountability for any
      problems.  After the Project Manager closes the tree for further
      checkins all checkins appear in a shaded color (grey) so that it
      is easy to desert which checkins were made after the tree was
      closed and see of any checkin policies have been violated.

      <p><li> Tinderbox box will displays the trouble tickets which
      were closed.  Since the changes in the code were likely made to
      fix bugs, it is convenient to have the current changes to the
      bug tracking system displayed on the Tinderbox pages.  This
      allows for cross correlation between version control changes,
      changes in the state of trouble tickets and the current state of
      the build and test suites.

      <p><li> Since the Tinderbox web pages are a centralized place
      for Project information there is a "Message of the Day" for
      managment messages, "Tree State" for current checkin policy and
      a "Notice Board" where developers can post information of
      interest the project.  Managment can set the "Tree State" to
      notify the developers what type of checkin dicipline is expected
      for version control use. Since many modern version control
      systems do not have a project state to enforce checkin disipline
      this can be the only mechanism for developers to learn what is
      expected of them at the current time.  Typically the notice
      board is used to announce when a developer makes major changes
      to the source code or to confirm that a recent build failure is
      being fixed or backed out.


<P><B>How can I have the source so that I can run it on my own projects?</B>

   Please see our <A HREF="../../cvs.html">CVS page</A> for information on using
   our CVS server.  (The Tinderbox and Bonsai sources are currently only
   available via CVS.)

               To check out the sources, you need to be running CVS 1.10 or later, and have your $CVSROOT set to


               The password for user anonymous is anonymous.

	cvs checkout mozilla/webtools/tinderbox2


Anyone can check out the sources via CVS, but only certain people have
the ability to check in. Those people, basically, are the module
owners and their delegates. Read our document on <A
HREF="../../hacking/index.html"> hacking mozilla </a> to find out how to get
the ability to check in.

<P><B>Is there a mailing list or news group for Tinderbox?</B>

    <p> We host some mailing lists and newsgroups at mozilla.org, to
    foster open communication in the developer community. We add new
    forums with some regularity, in response to the needs of you, the
    developers. What forums do you want? As new special-interest
    groups appear, we will create new newsgroups and mailing lists, or
    whatever seems most useful. Let us know. For an overview of the
    hottest newsgroup articles and threads, check out NewsBot.

    <p>Please see our <A HREF="http://www.mozilla.org/community.html">
    Community page </A> for information on subscribing to one of the
    mailing list and for the ground rules for participation in these
    forums. Please respect these rules, and each other.

    <P> The mailing lists and newsgroups described here are for
    Mozilla <I><B>developers</B></I>, not for end-<WBR>users.  These
    lists are for discussions related to the Mozilla source code, by
    and for the Mozilla developer community.

    <p> Since some people prefer newsgroups, and some people prefer
    mailing lists, we have created our discussion forums in pairs:
    both a newsgroup and a mailing list. Each one mirrors its mate:
    messages sent to one of the newsgroups will also show up in its
    corresponding mailing list, and vice versa. That way, you get your
    pick of whether you'd like to read the message via news or mail.

      <A NAME="mozilla-webtools"></A>
	  <A HREF="news://news.mozilla.org/netscape.public.mozilla.webtools">
	  <A HREF="mailto:mozilla-webtools-request@mozilla.org?subject=subscribe">
	  <FONT SIZE=-1>
	    <A HREF="mailto:mozilla-webtools-request@mozilla.org?subject=unsubscribe">
 Mozilla.org has developed several web-based tools that is used to
 help manage the code.  These tools include <a href="../../bugs/"> Bugzilla
 </a> (bug tracking), <a href="../../bonsai.html"> Bonsai </a> (CVS
 queries), and <a href="index.html"> Tinderbox </a> (continuous
 automated builds).  In the spirit of open software, the source of
 these tools is freely available, and people may work on them and use
 them for their own purposes.  This forum is for discussions about
 these tools.



<FONT SIZE="-1">
Copyright &copy; 1998-2001 The Mozilla Organization.
Last modified December 21,  2001.
<A HREF="http://www.mozilla.org/webtools/bonsai/cvslog.cgi?file=mozilla-org/html/projects/tinderbox/index.html&amp;rev=&amp;root=/cvsroot/">Document History</A>.