Sophie

Sophie

distrib > Fedora > 16 > i386 > by-pkgid > 9457b02689c69e152aa2cda68176fa51 > files > 114

buildbot-doc-0.8.4p1-2.fc16.noarch.rpm

<html lang="en">
<head>
<title>Mail-parsing ChangeSources - BuildBot Manual - 0.8.4p1</title>
<meta http-equiv="Content-Type" content="text/html">
<meta name="description" content="BuildBot Manual - 0.8.4p1">
<meta name="generator" content="makeinfo 4.13">
<link title="Top" rel="start" href="index.html#Top">
<link rel="up" href="Change-Sources.html#Change-Sources" title="Change Sources">
<link rel="prev" href="Configuring-Change-Sources.html#Configuring-Change-Sources" title="Configuring Change Sources">
<link rel="next" href="PBChangeSource.html#PBChangeSource" title="PBChangeSource">
<link href="http://www.gnu.org/software/texinfo/" rel="generator-home" title="Texinfo Homepage">
<!--
This is the BuildBot manual for Buildbot version 0.8.4p1.

Copyright (C) 2005, 2006, 2009, 2010 Brian Warner

Copying and distribution of this file, with or without
modification, are permitted in any medium without royalty
provided the copyright notice and this notice are preserved.-->
<meta http-equiv="Content-Style-Type" content="text/css">
<style type="text/css"><!--
  pre.display { font-family:inherit }
  pre.format  { font-family:inherit }
  pre.smalldisplay { font-family:inherit; font-size:smaller }
  pre.smallformat  { font-family:inherit; font-size:smaller }
  pre.smallexample { font-size:smaller }
  pre.smalllisp    { font-size:smaller }
  span.sc    { font-variant:small-caps }
  span.roman { font-family:serif; font-weight:normal; } 
  span.sansserif { font-family:sans-serif; font-weight:normal; } 
--></style>
</head>
<body>
<div class="node">
<a name="Mail-parsing-ChangeSources"></a>
<a name="Mail_002dparsing-ChangeSources"></a>
<p>
Next:&nbsp;<a rel="next" accesskey="n" href="PBChangeSource.html#PBChangeSource">PBChangeSource</a>,
Previous:&nbsp;<a rel="previous" accesskey="p" href="Configuring-Change-Sources.html#Configuring-Change-Sources">Configuring Change Sources</a>,
Up:&nbsp;<a rel="up" accesskey="u" href="Change-Sources.html#Change-Sources">Change Sources</a>
<hr>
</div>

<h4 class="subsection">4.7.3 Mail-parsing ChangeSources</h4>

<p>Many projects publish information about changes to their source tree
by sending an email message out to a mailing list, frequently named
PROJECT-commits or PROJECT-changes. Each message usually contains a
description of the change (who made the change, which files were
affected) and sometimes a copy of the diff. Humans can subscribe to
this list to stay informed about what's happening to the source tree.

   <p>The Buildbot can also be subscribed to a -commits mailing list, and
can trigger builds in response to Changes that it hears about. The
buildmaster admin needs to arrange for these email messages to arrive
in a place where the buildmaster can find them, and configure the
buildmaster to parse the messages correctly. Once that is in place,
the email parser will create Change objects and deliver them to the
Schedulers (see see <a href="Schedulers.html#Schedulers">Schedulers</a>) just like any other ChangeSource.

   <p>There are two components to setting up an email-based ChangeSource. 
The first is to route the email messages to the buildmaster, which is
done by dropping them into a &ldquo;maildir&rdquo;. The second is to actually
parse the messages, which is highly dependent upon the tool that was
used to create them. Each VC system has a collection of favorite
change-emailing tools, and each has a slightly different format, so
each has a different parsing function. There is a separate
ChangeSource variant for each parsing function.

   <p>Once you've chosen a maildir location and a parsing function, create
the change source and put it in <code>c['change_source']</code>:

<pre class="example">     from buildbot.changes.mail import CVSMaildirSource
     c['change_source'] = CVSMaildirSource("/home/buildbot/Mail", urlmaker=fileToUrl)
</pre>
   <ul class="menu">
<li><a accesskey="1" href="Subscribing-the-Buildmaster.html#Subscribing-the-Buildmaster">Subscribing the Buildmaster</a>
<li><a accesskey="2" href="Using-Maildirs.html#Using-Maildirs">Using Maildirs</a>
<li><a accesskey="3" href="Parsing-Email-Change-Messages.html#Parsing-Email-Change-Messages">Parsing Email Change Messages</a>
<li><a accesskey="4" href="CVSMaildirSource.html#CVSMaildirSource">CVSMaildirSource</a>
<li><a accesskey="5" href="SVNCommitEmailMaildirSource.html#SVNCommitEmailMaildirSource">SVNCommitEmailMaildirSource</a>
<li><a accesskey="6" href="BzrLaunchpadEmailMaildirSource.html#BzrLaunchpadEmailMaildirSource">BzrLaunchpadEmailMaildirSource</a>
</ul>

   </body></html>