Merge lp:~wgrant/launchpad/bug-549340-fix-buildqueue-destruction into lp:launchpad
| Status: | Rejected |
|---|---|
| Rejected by: | Michael Nelson on 2010-04-01 |
| Proposed branch: | lp:~wgrant/launchpad/bug-549340-fix-buildqueue-destruction |
| Merge into: | lp:launchpad |
| Prerequisite: | lp:~wgrant/launchpad/refactor-slavestatus |
| Diff against target: |
152 lines (+52/-2) 7 files modified
database/schema/security.cfg (+1/-1) lib/lp/buildmaster/model/buildqueue.py (+1/-1) lib/lp/code/model/sourcepackagerecipebuild.py (+4/-0) lib/lp/code/tests/test_sourcepackagerecipebuild.py (+18/-0) lib/lp/soyuz/interfaces/buildfarmbuildjob.py (+6/-0) lib/lp/soyuz/model/buildpackagejob.py (+5/-0) lib/lp/translations/tests/test_translationtemplatesbuildjob.py (+17/-0) |
| To merge this branch: | bzr merge lp:~wgrant/launchpad/bug-549340-fix-buildqueue-destruction |
| Related bugs: |
| Reviewer | Review Type | Date Requested | Status |
|---|---|---|---|
| Julian Edwards (community) | 2010-03-27 | Disapprove on 2010-03-29 | |
|
Review via email:
|
|||
Commit Message
Fix destruction of translation template build farm jobs.
Description of the Change
This branch fixes BuildQueue.
I've replaced the direct store removal with a call to IBFJ.destroySelf, and implemented it on the two classes that needed it. It actually lives on IBuildFarmBuildJob for now, since TTBJ has security declarations for both IBuildFarmJob and IBranchJob, the latter already defining destroySelf -- this results in a Zope permission definition conflict, even though the permissions are actually the same.
I've also added tests for destruction of TTBJ and SPRBJ BuildQueues. That required the granting of DELETE on SPRBJ to launchpad_main.
Unmerged revisions
- 10606. By William Grant on 2010-03-27
-
Let IBuildFarmJobs decide their own fate -- don't try to directly remove them from their Store.

I do not like this fix, we should not be adding more SQLObject methods. Instead, there should be a real TranslationTemp latesBuildJob table so that build history is preserved.
I'm a bit flummoxed as to how its DB object is a BranchJob?