Package buildbot :: Package slave :: Package commands :: Module vcs :: Class SVN
[frames] | no frames]

Class SVN

source code

base.Command --+    
               |    
      SourceBase --+
                   |
                  SVN

Subversion-specific VC operation. In addition to the arguments handled by SourceBase, this command reads the following keys:

['svnurl'] (required): the SVN repository string ['username']: Username passed to the svn command ['password']: Password passed to the svn command ['keep_on_purge']: Files and directories to keep between updates ['ignore_ignores']: Ignore ignores when purging changes ['always_purge']: Always purge local changes after each build ['depth']: Pass depth argument to subversion 1.5+

Instance Methods
 
setup(self, args)
Override this in a subclass to extract items from the args dict.
source code
 
sourcedirIsUpdateable(self)
Returns True if the tree can be updated.
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
 
getSvnVersionCommand(self)
Get the (shell) command used to determine SVN revision number of checked-out code
source code
 
parseGotRevision(self)
Override this in a subclass.
source code

Inherited from SourceBase: doClobber, doClobberTryChmodIfFail, doCopy, doPatch, doVC, doVCFallback2, interrupt, maybeClobber, maybeDoVCFallback, maybeDoVCRetry, readSourcedata, sourcedataMatches, sourcedirIsPatched, start, writeSourcedata

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

Class Variables
  header = 'svn operation'

Inherited from SourceBase: sourcedata

Inherited from base.Command: __implemented__, __provides__, 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)

sourcedirIsUpdateable(self)

source code 

Returns True if the tree can be updated.

Overrides: SourceBase.sourcedirIsUpdateable
(inherited documentation)

doVCUpdate(self)

source code 

Returns a deferred with the steps to update a checkout.

Overrides: SourceBase.doVCUpdate
(inherited documentation)

doVCFull(self)

source code 

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

Overrides: SourceBase.doVCFull
(inherited documentation)

getSvnVersionCommand(self)

source code 

Get the (shell) command used to determine SVN revision number of checked-out code

return: list of strings, passable as the command argument to ShellCommand

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: SourceBase.parseGotRevision
(inherited documentation)