Package buildbot :: Package status :: Module tinderbox :: Class TinderboxMailNotifier
[frames] | no frames]

Class TinderboxMailNotifier

source code

                 base.StatusReceiverBase --+        
                                           |        
 twisted.application.service.Service --+   |        
                                       |   |        
twisted.application.service.MultiService --+        
                                           |        
                    util.ComparableMixin --+        
                                           |        
             base.StatusReceiverMultiService --+    
                                               |    
                               mail.MailNotifier --+
                                                   |
                                                  TinderboxMailNotifier

This is a Tinderbox status notifier. It can send e-mail to a number of different tinderboxes or people. E-mails are sent at the beginning and upon completion of each build. It can be configured to send out e-mails for only certain builds.

The most basic usage is as follows:

   TinderboxMailNotifier(fromaddr="buildbot@localhost",
                         tree="MyTinderboxTree",
                         extraRecipients=["tinderboxdaemon@host.org"])

The builder name (as specified in master.cfg) is used as the "build" tinderbox option.

Instance Methods
 
__init__(self, fromaddr, tree, extraRecipients, categories=None, builders=None, relayhost='localhost', subject='buildbot %(result)s in %(builder)s', binaryURL='', logCompression='', errorparser='unix', columnName=None, useChangeTime=False) source code
 
buildStarted(self, name, build) source code
 
buildMessage(self, name, build, results) source code
 
__provides__(...)
Special descriptor for class __provides__

Inherited from mail.MailNotifier: buildFinished, buildMessageDict, builderAdded, builderChangedState, builderRemoved, buildsetFinished, createEmail, disownServiceParent, getCustomMesgData, isMailNeeded, patch_to_attachment, sendMessage, sendmail, setServiceParent, startService, stopService, useLookup, useUsers

Inherited from base.StatusReceiverBase: __providedBy__, buildETAUpdate, buildsetSubmitted, changeAdded, checkConfig, logChunk, logFinished, logStarted, requestCancelled, requestSubmitted, slaveConnected, slaveDisconnected, stepETAUpdate, stepFinished, stepStarted, stepText2Changed, stepTextChanged

Inherited from twisted.application.service.MultiService: __iter__, addService, getServiceNamed, privilegedStartService, removeService

Inherited from twisted.application.service.Service: __getstate__, setName

Inherited from util.ComparableMixin: __cmp__, __hash__

Class Variables
  compare_attrs = ['extraRecipients', 'fromaddr', 'categories', ...
  __implemented__ = <implementedBy buildbot.status.tinderbox.Tin...

Inherited from mail.MailNotifier: possible_modes

Inherited from twisted.application.service.Service: name, parent, running

Method Details

__init__(self, fromaddr, tree, extraRecipients, categories=None, builders=None, relayhost='localhost', subject='buildbot %(result)s in %(builder)s', binaryURL='', logCompression='', errorparser='unix', columnName=None, useChangeTime=False)
(Constructor)

source code 
Parameters:
  • fromaddr (string) - the email address to be used in the 'From' header.
  • tree (string) - The Tinderbox tree to post to. When tree is a WithProperties instance it will be interpolated as such. See WithProperties for more detail
  • extraRecipients (tuple of string) - E-mail addresses of recipients. This should at least include the tinderbox daemon.
  • categories (list of strings) - a list of category names to serve status information for. Defaults to None (all categories). Use either builders or categories, but not both.
  • builders (list of strings) - a list of builder names for which mail should be sent. Defaults to None (send mail for all builds). Use either builders or categories, but not both.
  • relayhost (string) - the host to which the outbound SMTP connection should be made. Defaults to 'localhost'
  • subject (string) - a string to be used as the subject line of the message. %(builder)s will be replaced with the name of the %builder which provoked the message. This parameter is not significant for the tinderbox daemon.
  • binaryURL (string) - If specified, this should be the location where final binary for a build is located. (ie. http://www.myproject.org/nightly/08-08-2006.tgz) It will be posted to the Tinderbox.
  • logCompression (string) - The type of compression to use on the log. Valid options are"bzip2" and "gzip". gzip is only known to work on Python 2.4 and above.
  • errorparser (string) - The error parser that the Tinderbox server should use when scanning the log file. Default is "unix".
  • columnName (string) - When columnName is None, use the buildername as the Tinderbox column name. When columnName is a string this exact string will be used for all builders that this TinderboxMailNotifier cares about (not recommended). When columnName is a WithProperties instance it will be interpolated as such. See WithProperties for more detail.
  • useChangeTime (bool) - When True, the time of the first Change for a build is used as the builddate. When False, the current time is used as the builddate.
Overrides: twisted.application.service.MultiService.__init__

buildStarted(self, name, build)

source code 
Overrides: base.StatusReceiverBase.buildStarted

buildMessage(self, name, build, results)

source code 
Overrides: mail.MailNotifier.buildMessage

__provides__(...)

 
Special descriptor for class __provides__

The descriptor caches the implementedBy info, so that
we can get declarations for objects without instance-specific
interfaces a bit quicker.

For example:

  >>> from zope.interface import Interface
  >>> class IFooFactory(Interface):
  ...     pass
  >>> class IFoo(Interface):
  ...     pass
  >>> class C(object):
  ...     implements(IFoo)
  ...     classProvides(IFooFactory)
  >>> [i.getName() for i in C.__provides__]
  ['IFooFactory']

  >>> [i.getName() for i in C().__provides__]
  ['IFoo']

Overrides: util.ComparableMixin.__provides__

Class Variable Details

compare_attrs

Value:
['extraRecipients',
 'fromaddr',
 'categories',
 'builders',
 'addLogs',
 'relayhost',
 'subject',
 'binaryURL',
...

__implemented__

Value:
<implementedBy buildbot.status.tinderbox.TinderboxMailNotifier>