Merge lp:~michael.nelson/launchpad/567922-binarypackagebuild-packagebuild-4 into lp:launchpad/db-devel
| Status: | Merged | ||||
|---|---|---|---|---|---|
| Approved by: | Michael Nelson on 2010-04-30 | ||||
| Approved revision: | no longer in the source branch. | ||||
| Merged at revision: | 9405 | ||||
| Proposed branch: | lp:~michael.nelson/launchpad/567922-binarypackagebuild-packagebuild-4 | ||||
| Merge into: | lp:launchpad/db-devel | ||||
| Prerequisite: | lp:~michael.nelson/launchpad/567922-binarypackagebuild-packagebuild-3 | ||||
| Diff against target: |
711 lines (+184/-237) (has conflicts) 11 files modified
BRANCH.TODO (+6/-0) lib/lp/buildmaster/interfaces/buildfarmjob.py (+40/-34) lib/lp/buildmaster/model/buildfarmjob.py (+109/-97) lib/lp/buildmaster/model/packagebuild.py (+8/-71) lib/lp/buildmaster/tests/test_buildfarmjob.py (+0/-12) lib/lp/code/model/sourcepackagerecipebuild.py (+4/-4) lib/lp/soyuz/interfaces/buildfarmbuildjob.py (+2/-2) lib/lp/soyuz/model/buildpackagejob.py (+6/-6) lib/lp/soyuz/tests/test_buildpackagejob.py (+3/-3) lib/lp/translations/model/translationtemplatesbuildjob.py (+3/-4) lib/lp/translations/tests/test_translationtemplatesbuildjob.py (+3/-4) Text conflict in lib/lp/buildmaster/interfaces/buildbase.py Text conflict in lib/lp/buildmaster/model/buildbase.py Text conflict in lib/lp/buildmaster/tests/test_buildbase.py |
||||
| To merge this branch: | bzr merge lp:~michael.nelson/launchpad/567922-binarypackagebuild-packagebuild-4 | ||||
| Related bugs: |
|
| Reviewer | Review Type | Date Requested | Status |
|---|---|---|---|
| Abel Deuring (community) | code | 2010-04-28 | Approve on 2010-04-30 |
|
Review via email:
|
|||
Description of the Change
This branch is part of a pipeline for
https:/
https:/
Overview
========
The changes in this branch just do a bit of cleaning up after the refactoring of the past 3 branches.
The previous 3 branches added all the IBuildBase attributes and methods to IBuildFarmJob/
This branch does some retrospective cleaning up.
Details
=======
The previous branches update the IBuildFarmJob as planned so that new database-backed BuildFarmJob/
So, to simplify the ongoing refactoring work, I split out IBuildFarmJobOld from IBuildFarmJob, where IBuildFarmJobOld is the exact interface that existing classes currently expect, while IBuildFarmJob is a superset representing the new database-backed objects. I also added a note in the BRANCH.TODO that these *Old classes will be removed before the branch is landed.
This allowed IBuildFarmJob and IPackageBuild to be simplified, as they no longer need to worry about whether they are representing a database-backed object or not.
This branch is dependent on the pending schema patch in a previous branch.
To test
=======
First update the test db schema (required as the db patch still needs to be updated to remove the old build table):
psql launchpad_
bin/py database/
And then either:
bin/test -vvt test_*build (lots of tests), or for a quicker run:
bin/test -vvt test_packagebuild -t test_buildfarmjob -t doc/build.txt -t test_buildqueue -t test_sourcepack
(there is one intentional test failure in test_buildfarmjob for a method that can't be implemented until I switch BinaryPackageBuild to the new delegation model of IPackageBuild/
The next branch will (finally) the work to switch BinaryPackageBuild from the old build table to the new buildfarmjob/
