~launchpad-pqm/launchpad/devel

« back to all changes in this revision

Viewing changes to lib/lp/code/model/sourcepackagerecipebuild.py

Merge with trunk.

Show diffs side-by-side

added added

removed removed

Lines of Context:
46
46
    )
47
47
from lp.buildmaster.interfaces.buildbase import BuildStatus
48
48
from lp.buildmaster.interfaces.buildfarmjob import BuildFarmJobType
49
 
from lp.buildmaster.model.buildbase import BuildBase
50
49
from lp.buildmaster.model.buildfarmjob import BuildFarmJobOldDerived
51
50
from lp.buildmaster.model.buildqueue import BuildQueue
52
51
from lp.buildmaster.model.packagebuild import (
128
127
 
129
128
    @property
130
129
    def distribution(self):
131
 
        """See `IBuildBase`."""
 
130
        """See `IPackageBuild`."""
132
131
        return self.distroseries.distribution
133
132
 
134
133
    is_virtualized = True
160
159
 
161
160
    @property
162
161
    def buildqueue_record(self):
163
 
        """See `IBuildBase`."""
 
162
        """See `IBuildFarmJob`."""
164
163
        store = Store.of(self)
165
164
        results = store.find(
166
165
            BuildQueue,
278
277
        return specific_job
279
278
 
280
279
    def estimateDuration(self):
281
 
        """See `IBuildBase`."""
 
280
        """See `IPackageBuild`."""
282
281
        median = self.recipe.getMedianBuildDuration()
283
282
        if median is not None:
284
283
            return median
288
287
        return self.source_package_release is not None
289
288
 
290
289
    def notify(self, extra_info=None):
291
 
        """See `IBuildBase`."""
 
290
        """See `IPackageBuild`."""
292
291
        mailer = SourcePackageRecipeBuildMailer.forStatus(self)
293
292
        mailer.sendAll()
294
293
 
327
326
        except KeyError:
328
327
            raise NotFoundError(filename)
329
328
 
330
 
    @staticmethod
331
 
    def _handleStatus_OK(build, librarian, slave_status, logger):
332
 
        """See `IBuildBase`."""
333
 
        BuildBase._handleStatus_OK(build, librarian, slave_status, logger)
 
329
    def _handleStatus_OK(self, librarian, slave_status, logger):
 
330
        """See `IPackageBuild`."""
 
331
        super(SourcePackageRecipeBuild, self)._handleStatus_OK(
 
332
            librarian, slave_status, logger)
334
333
        # base implementation doesn't notify on success.
335
 
        if build.status == BuildStatus.FULLYBUILT:
336
 
            build.notify()
 
334
        if self.status == BuildStatus.FULLYBUILT:
 
335
            self.notify()
337
336
 
338
337
 
339
338
class SourcePackageRecipeBuildJob(BuildFarmJobOldDerived, Storm):