l.b.m.b.BuildBase : class documentation

Part of lp.buildmaster.model.buildbase View In Hierarchy

A mixin class providing functionality for farm jobs that build a package.

Note: this class does not implement IBuildBase as we currently duplicate the properties defined on IBuildBase on the inheriting class tables. BuildBase cannot therefore implement IBuildBase itself, as storm requires that the corresponding __storm_table__ be defined for the class. Instead, the classes using the BuildBase mixin must ensure that they implement IBuildBase.

Static Method getUploadDirLeaf See IPackageBuild.
Static Method getUploadDir Return the directory that things will be stored in.
Static Method getUploaderCommand See IBuildBase.
Method build_log_url See IBuildBase.
Static Method getUploadLogContent Retrieve the upload log contents.
Method upload_log_url See IBuildBase.
Method handleStatus See IBuildBase.
Static Method getLogFromSlave See IBuildBase.
Static Method storeBuildInfo See IBuildBase.
Static Method createUploadLog Creates a file on the librarian for the upload log.
Method storeUploadLog See IBuildBase.
Static Method queueBuild See IBuildBase
Method _getProxiedFileURL Return the 'http_url' of a ProxiedLibraryFileAlias.
Static Method _handleStatus_OK Handle a package that built successfully.
Static Method _handleStatus_PACKAGEFAIL Handle a package that had failed to build.
Static Method _handleStatus_DEPFAIL Handle a package that had missing dependencies.
Static Method _handleStatus_CHROOTFAIL Handle a package that had failed when unpacking the CHROOT.
Static Method _handleStatus_BUILDERFAIL Handle builder failures.
Static Method _handleStatus_GIVENBACK Handle automatic retry requested by builder.
@staticmethod
def getUploadDirLeaf(build_cookie, now=None):
See IPackageBuild.
@staticmethod
def getUploadDir(upload_leaf):
Return the directory that things will be stored in.
@staticmethod
def getUploaderCommand(build, upload_leaf, uploader_logfilename):
See IBuildBase.
def _getProxiedFileURL(self, library_file):
Return the 'http_url' of a ProxiedLibraryFileAlias.
@property
def build_log_url(self):
See IBuildBase.
@staticmethod
def getUploadLogContent(root, leaf):
Retrieve the upload log contents.
ParametersrootRoot directory for the uploads
leafLeaf for this particular upload
ReturnsContents of log file or message saying no log file was found.
@property
def upload_log_url(self):
See IBuildBase.
def handleStatus(self, status, librarian, slave_status):
See IBuildBase.
@staticmethod
def _handleStatus_OK(build, librarian, slave_status, logger):
Handle a package that built successfully.

Once built successfully, we pull the files, store them in a directory, store build information and push them through the uploader.

@staticmethod
def _handleStatus_PACKAGEFAIL(build, librarian, slave_status, logger):
Handle a package that had failed to build.

Build has failed when trying the work with the target package, set the job status as FAILEDTOBUILD, store available info and remove Buildqueue entry.

@staticmethod
def _handleStatus_DEPFAIL(build, librarian, slave_status, logger):
Handle a package that had missing dependencies.

Build has failed by missing dependencies, set the job status as MANUALDEPWAIT, store available information, remove BuildQueue entry and release builder slave for another job.

@staticmethod
def _handleStatus_CHROOTFAIL(build, librarian, slave_status, logger):
Handle a package that had failed when unpacking the CHROOT.

Build has failed when installing the current CHROOT, mark the job as CHROOTFAIL, store available information, remove BuildQueue and release the builder.

@staticmethod
def _handleStatus_BUILDERFAIL(build, librarian, slave_status, logger):
Handle builder failures.

Build has been failed when trying to build the target package, The environment is working well, so mark the job as NEEDSBUILD again and 'clean' the builder to do another jobs.

@staticmethod
def _handleStatus_GIVENBACK(build, librarian, slave_status, logger):
Handle automatic retry requested by builder.

GIVENBACK pseudo-state represents a request for automatic retry later, the build records is delayed by reducing the lastscore to ZERO.

@staticmethod
def getLogFromSlave(build):
See IBuildBase.
@staticmethod
def storeBuildInfo(build, librarian, slave_status):
See IBuildBase.
@staticmethod
def createUploadLog(build, content, filename=None):
Creates a file on the librarian for the upload log.
ReturnsILibraryFileAlias for the upload log file.
def storeUploadLog(self, content):
See IBuildBase.
@staticmethod
def queueBuild(build, suspended=False):
See IBuildBase
API Documentation for Launchpad, generated by pydoctor at 2010-08-25 00:00:22.