Package buildslave :: Package commands :: Module svn :: Class SVN
[frames] | no frames]

Class SVN

source code

      base.Command --+    
                     |    
base.SourceBaseCommand --+
                         |
                        SVN

Subversion-specific VC operation. In addition to the arguments handled by SourceBaseCommand, 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
 
doSVNExport(self)
Since svnversion cannot be used on a svn export, we find the HEAD revision from the repository and pass it to the --revision arg
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 base.SourceBaseCommand: doClobber, doClobberTryChmodIfFail, doCopy, doPatch, doVC, doVCFallback2, getCommand, interrupt, maybeClobber, maybeDoVCFallback, maybeDoVCRetry, maybeNotDoVCFallback, readSourcedata, setFileContents, sourcedataMatches, sourcedirIsPatched, start, writeSourcedata

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

Static Methods
 
getUnversionedFiles(stdout, keep_on_purge)
Delete everything that shown up on status.
source code
Class Variables
  header = 'svn 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)

sourcedirIsUpdateable(self)

source code 

Returns True if the tree can be updated.

Overrides: base.SourceBaseCommand.sourcedirIsUpdateable
(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)

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 RunProcess

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)