Package buildslave :: Package commands :: Module p4 :: Class P4
[frames] | no frames]

Class P4

source code

      base.Command --+        
                     |        
base.SourceBaseCommand --+    
                         |    
                    P4Base --+
                             |
                            P4

A P4 source-updater.

['p4port'] (required): host:port for server to access ['p4user'] (required): user to use for access ['p4passwd'] (required): passwd to try for the user ['p4client'] (required): client spec to use ['p4extra_views'] (required): additional client views to use ['p4base'] (required): view into the Perforce depot without branch name or trailing "..." ['p4line_end'] (optional): value of the LineEnd client specification property

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
 
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

Class Variables
  header = 'p4'

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)

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)