Package buildslave :: Package commands :: Module mtn :: Class Monotone
[frames] | no frames]

Class Monotone

source code

      base.Command --+    
                     |    
base.SourceBaseCommand --+
                         |
                        Monotone

Monotone specific VC operation. In addition to the arguments
handled by SourceBaseCommand, this command reads the following keys:

['repourl'] (required):     the Monotone repository string
['branch'] (required):      which branch to retrieve.

['revision'] (optional):    which revision (revision selector)
                            to retrieve.
['progress'] (optional):       have mtn output progress markers,
                               avoiding timeouts for long fetches;

Instance Methods
 
setup(self, args)
Override this in a subclass to extract items from the args dict.
source code
 
start(self)
Start the command.
source code
 
doVCUpdate(self)
Returns a deferred with the steps to update a checkout.
source code
 
doVCFull(self)
Returns a deferred with the steps to do a fresh checkout.
source code
 
sourcedirIsUpdateable(self)
Returns True if the tree can be updated.
source code
 
parseGotRevision(self)
Override this in a subclass.
source code

Inherited from base.SourceBaseCommand: doClobber, doClobberTryChmodIfFail, doCopy, doPatch, doVC, doVCFallback2, getCommand, interrupt, maybeClobber, maybeDoVCFallback, maybeDoVCRetry, maybeNotDoVCFallback, readSourcedata, setFileContents, sourcedataMatches, sourcedirIsPatched, writeSourcedata

Inherited from base.Command: __init__, __providedBy__, __provides__, doInterrupt, doStart, sendStatus

Class Variables
  header = 'monotone operation'

Inherited from base.SourceBaseCommand: sourcedata

Inherited from base.Command: __implemented__, debug, interrupted, running

Method Details

setup(self, args)

source code 

Override this in a subclass to extract items from the args dict.

Overrides: base.Command.setup
(inherited documentation)

start(self)

source code 

Start the command. This method should return a Deferred that will fire when the command has completed. The Deferred's argument will be ignored.

This method should be overridden by subclasses.

Overrides: base.Command.start
(inherited documentation)

doVCUpdate(self)

source code 

Returns a deferred with the steps to update a checkout.

Overrides: base.SourceBaseCommand.doVCUpdate
(inherited documentation)

doVCFull(self)

source code 

Returns a deferred with the steps to do a fresh checkout.

Overrides: base.SourceBaseCommand.doVCFull
(inherited documentation)

sourcedirIsUpdateable(self)

source code 

Returns True if the tree can be updated.

Overrides: base.SourceBaseCommand.sourcedirIsUpdateable
(inherited documentation)

parseGotRevision(self)

source code 

Override this in a subclass. It should return a string that represents which revision was actually checked out, or a Deferred that will fire with such a string. If, in a future build, you were to pass this 'got_revision' string in as the 'revision' component of a SourceStamp, you should wind up with the same source code as this checkout just obtained.

It is probably most useful to scan self.command.stdout for a string of some sort. Be sure to set keepStdout=True on the VC command that you run, so that you'll have something available to look at.

If this information is unavailable, just return None.

Overrides: base.SourceBaseCommand.parseGotRevision
(inherited documentation)