mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-11-02 07:05:24 +00:00
274 lines
13 KiB
HTML
274 lines
13 KiB
HTML
|
|
<HTML>
|
|
<head>
|
|
<TITLE>Tinderbox 2.0</TITLE>
|
|
</head>
|
|
|
|
|
|
<BODY BGCOLOR="#FFFFFF" TEXT="#000000"
|
|
LINK="#0000EE" VLINK="#551A8B" ALINK="#FF0000"
|
|
MARGINHEIGHT="0" MARGINWIDTH="0">
|
|
<MAP NAME="banner">
|
|
<AREA SHAPE=RECT COORDS="300,11,558,44" ALT="" HREF="http://www.mozilla.org/">
|
|
</MAP>
|
|
<TABLE BORDER=0 CELLPADDING=0 CELLSPACING=0 WIDTH="100%">
|
|
<TR><TD BGCOLOR="#000000" VALIGN=TOP><IMG
|
|
SRC="../../images/mozilla-banner.gif"
|
|
ALT="" BORDER=0 USEMAP="#banner"
|
|
WIDTH="600" HEIGHT="58" VSPACE="0" HSPACE="0"></TD></TR></TABLE>
|
|
<TABLE BORDER="0" CELLPADDING="3" CELLSPACING="0" WIDTH="100%">
|
|
<TR>
|
|
<TD VALIGN="TOP" >
|
|
<TABLE BORDER="0" ><TR><TD BGCOLOR="#000000" VALIGN="TOP">
|
|
<TABLE BORDER="0" CELLSPACING="3"><TR><TD BGCOLOR="#DDDDDD" VALIGN="TOP">
|
|
<TABLE CELLPADDING=0 CELLSPACING=3 BORDER=0>
|
|
<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&module=SeaMonkeyAll&branch=HEAD&branchtype=match&dir=&file=&filetype=match&who=&whotype=match&sortby=Date&hours=2&date=day&mindate=&maxdate=&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>
|
|
</TABLE>
|
|
</TD></TR></TABLE>
|
|
</TD></TR></TABLE>
|
|
</TD>
|
|
<TD VALIGN="TOP">
|
|
|
|
|
|
|
|
|
|
|
|
<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>
|
|
|
|
<ol>
|
|
|
|
|
|
<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.
|
|
|
|
</ol>
|
|
|
|
<P><B>How can I have the source so that I can run it on my own projects?</B>
|
|
|
|
<p>
|
|
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.)
|
|
|
|
<pre>
|
|
To check out the sources, you need to be running CVS 1.10 or later, and have your $CVSROOT set to
|
|
|
|
:pserver:anonymous@cvs-mirror.mozilla.org:/cvsroot
|
|
|
|
The password for user anonymous is anonymous.
|
|
|
|
cvs checkout mozilla/webtools/tinderbox2
|
|
|
|
</pre>
|
|
|
|
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.
|
|
|
|
</UL>
|
|
<A NAME="mozilla-webtools"></A>
|
|
<TABLE BORDER=0 CELLSPACING=3 CELLPADDING=0 WIDTH="100%"><TR>
|
|
<TH ALIGN=LEFT VALIGN=TOP ROWSPAN=2><B>Mozilla-Webtools</B></TH>
|
|
<TD VALIGN=TOP ALIGN=RIGHT>
|
|
<A HREF="news://news.mozilla.org/netscape.public.mozilla.webtools">
|
|
<B>netscape.public.mozilla.webtools</B></A><BR>
|
|
<A HREF="mailto:mozilla-webtools-request@mozilla.org?subject=subscribe">
|
|
<B>mozilla-webtools@mozilla.org</B></A>
|
|
<BR>
|
|
<FONT SIZE=-1>
|
|
<A HREF="mailto:mozilla-webtools-request@mozilla.org?subject=unsubscribe">
|
|
unsubscribe</A>
|
|
</FONT>
|
|
</TD></TR></TABLE><UL>
|
|
|
|
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.
|
|
|
|
</UL>
|
|
|
|
<p>
|
|
|
|
|
|
|
|
</TD>
|
|
</TR>
|
|
<TR>
|
|
<TD COLSPAN="2" ALIGN="RIGHT" VALIGN="TOP">
|
|
<FONT SIZE="-1">
|
|
Copyright © 1998-2001 The Mozilla Organization.
|
|
<BR>
|
|
Last modified December 21, 2001.
|
|
<BR>
|
|
<A HREF="http://www.mozilla.org/webtools/bonsai/cvslog.cgi?file=mozilla-org/html/projects/tinderbox/index.html&rev=&root=/cvsroot/">Document History</A>.
|
|
</FONT>
|
|
</TD>
|
|
</TR>
|
|
</TABLE>
|
|
|
|
|
|
</BODY>
|
|
</HTML>
|