Package buildbot :: Package steps :: Package source :: Module git :: Class Git
[frames] | no frames]

Class Git

source code

process.properties.PropertiesMixin --+            
                                     |            
           process.buildstep.BuildStep --+        
                                         |        
        process.buildstep.LoggingBuildStep --+    
                                             |    
                              oldsource.Source --+
                                                 |
                                                Git

Class for Git with all the smarts

Instance Methods
 
__init__(self, repourl=None, branch='HEAD', mode='incremental', method=None, submodules=False, shallow=False, progress=False, retryFetch=False, clobberOnFailure=False, **kwargs) source code
 
startVC(self, branch, revision, patch) source code
 
full(*args, **kwargs) source code
 
incremental(*args, **kwargs) source code
 
clean(self) source code
 
clobber(self) source code
 
fresh(self) source code
 
copy(self) source code
 
finish(self, res) source code
 
parseGotRevision(self, _) source code
 
patch(self, _, patch) source code
 
computeSourceRevision(self, changes)
Each subclass must implement this method to do something more precise than -rHEAD every time.
source code
 
checkGit(self) source code

Inherited from oldsource.Source: commandComplete, describe, getRepository, setDefaultWorkdir, setStepStatus, start

Inherited from process.buildstep.LoggingBuildStep: addLogFile, buildCommandKwargs, checkDisconnect, createSummary, evaluateCommand, getText, getText2, interrupt, maybeGetText2, setStatus, setupLogfiles, startCommand

Inherited from process.buildstep.BuildStep: __provides__, acquireLocks, addCompleteLog, addFactoryArguments, addHTMLLog, addLog, addLogObserver, addURL, failed, finished, getLog, getSlaveName, getStepFactory, releaseLocks, runCommand, setBuild, setBuildSlave, setProgress, setupProgress, slaveVersion, slaveVersionIsOlderThan, startStep

Inherited from process.properties.PropertiesMixin: __providedBy__, getProperties, getProperty, hasProperty, has_key, render, setProperty

Class Variables
  name = 'git'
  renderables = ['repourl']

Inherited from oldsource.Source: branch, description, descriptionDone, flunkOnFailure, haltOnFailure, notReally

Inherited from process.buildstep.LoggingBuildStep: cmd, logfiles, parms, progressMetrics

Inherited from process.buildstep.BuildStep: __implemented__, alwaysRun, build, doStepIf, flunkOnWarnings, hideStepIf, locks, progress, set_runtime_properties, step_status, useProgress, warnOnFailure, warnOnWarnings

Method Details

__init__(self, repourl=None, branch='HEAD', mode='incremental', method=None, submodules=False, shallow=False, progress=False, retryFetch=False, clobberOnFailure=False, **kwargs)
(Constructor)

source code 
Parameters:
  • repourl (string) - the URL which points at the git repository
  • branch (string) - The branch or tag to check out by default. If a build specifies a different branch, it will be used instead of this.
  • submodules (boolean) - Whether or not to update (and initialize) git submodules.
  • mode (string) - Type of checkout. Described in docs.
  • method (string) - Full builds can be done is different ways. This parameter specifies which method to use.
  • progress (boolean) - Pass the --progress option when fetching. This can solve long fetches getting killed due to lack of output, but requires Git 1.7.2+.
  • shallow (boolean) - Use a shallow or clone, if possible
  • retryFetch (boolean) - Retry fetching before failing source checkout.
Overrides: process.buildstep.BuildStep.__init__

full(*args, **kwargs)

source code 
Decorators:
  • @defer.deferredGenerator

incremental(*args, **kwargs)

source code 
Decorators:
  • @defer.deferredGenerator

computeSourceRevision(self, changes)

source code 

Each subclass must implement this method to do something more precise than -rHEAD every time. For version control systems that use repository-wide change numbers (SVN, P4), this can simply take the maximum such number from all the changes involved in this build. For systems that do not (CVS), it needs to create a timestamp based upon the latest Change, the Build's treeStableTimer, and an optional self.checkoutDelay value.

Overrides: oldsource.Source.computeSourceRevision
(inherited documentation)