Merge lp:~wgrant/launchpad/ddeb-domination into lp:launchpad/db-devel
Status: | Merged |
---|---|
Approved by: | Māris Fogels |
Approved revision: | no longer in the source branch. |
Merged at revision: | 9581 |
Proposed branch: | lp:~wgrant/launchpad/ddeb-domination |
Merge into: | lp:launchpad/db-devel |
Diff against target: |
252 lines (+134/-9) 4 files modified
lib/lp/archivepublisher/domination.py (+4/-1) lib/lp/archivepublisher/tests/test_dominator.py (+34/-3) lib/lp/soyuz/model/publishing.py (+35/-1) lib/lp/soyuz/tests/test_publishing.py (+61/-4) |
To merge this branch: | bzr merge lp:~wgrant/launchpad/ddeb-domination |
Related bugs: |
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Māris Fogels (community) | code | Approve | |
Review via email: mp+30928@code.launchpad.net |
Commit message
Binary publications now supersede their corresponding debug publications when they are themselves superseded.
Description of the change
This branch alters binary domination to fix bug #604425.
DDEBs need to be as unintrusive as possible -- people shouldn't have to change how they deal with archive administration. To help with this, DDEB publications should be superseded as soon as their DEB is. This will, for example, eliminate the need for archive admins to manually NBS them out if they stop being built.
This is implemented much the same as atomic arch-indep domination: BinaryPackagePu
Because of this change, it's no longer important for DDEBs to supersede each other (their DEBs will handle it all). I've filtered them out of the Dominator query, and added an assertion to confirm that no DDEB ever accidentally supersedes something else.
Hi William,
This is a very good change! At first I was caught thinking testJudgeAndDom inateWithDDEBs( ) needed refactoring, but was pleasantly surprised to find that you fully tested both DDEB policies in the test_publishing module. I guess testJudgeAndDom inate is just checking that the components are integrated correctly.
The only other question is about _getCorrespondi ngDDEBPublicati ons(): can it use the ISlaveStore instead of the IMasterStore? Check lib/canonical/ launchpad/ doc/db- policy. txt for the difference.
Otherwise this looks good to me: r=mars
Maris