Replace getName/verifySlaveBuildID
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Launchpad itself |
Fix Released
|
Low
|
Jeroen T. Vermeulen |
Bug Description
The combo of IBuildFarmJob.
* Both methods are specialized for different build-farm job types.
* There may not be any need for a separate verification method if, for verification, we can just re-generate the slave build id and see that what we're verifying matches the newly generated one.
My preference is just to have a single method that produces a "slave build cookie," a hard-to-guess string that a compromised slave could not easliy forge to impersonate another slave. It would be a hash based on buildqueue id, creation date, requester, and perhaps other things. In this way, if it actually matters (it's not certain that impersonation is an actual risk) a compromised slave gets no useful information as starting point for guessing other slaves' cookies.
Related branches
- Eleanor Berger (community): Approve (code)
-
Diff: 888 lines (+177/-326)19 files modifiedlib/lp/buildmaster/doc/builder.txt (+6/-6)
lib/lp/buildmaster/doc/buildfarmjobbehavior.txt (+2/-2)
lib/lp/buildmaster/interfaces/builder.py (+4/-4)
lib/lp/buildmaster/interfaces/buildfarmjob.py (+10/-0)
lib/lp/buildmaster/interfaces/buildfarmjobbehavior.py (+6/-5)
lib/lp/buildmaster/model/builder.py (+6/-5)
lib/lp/buildmaster/model/buildfarmjob.py (+24/-0)
lib/lp/buildmaster/model/buildfarmjobbehavior.py (+8/-105)
lib/lp/buildmaster/tests/test_buildfarmjobbehavior.py (+76/-39)
lib/lp/buildmaster/tests/test_manager.py (+1/-1)
lib/lp/code/model/recipebuilder.py (+2/-10)
lib/lp/code/model/sourcepackagerecipebuild.py (+3/-0)
lib/lp/code/tests/test_recipebuilder.py (+10/-25)
lib/lp/soyuz/doc/buildd-slavescanner.txt (+7/-1)
lib/lp/soyuz/model/binarypackagebuildbehavior.py (+5/-3)
lib/lp/soyuz/tests/soyuzbuilddhelpers.py (+3/-2)
lib/lp/soyuz/tests/test_binarypackagebuildbehavior.py (+0/-66)
lib/lp/translations/model/translationtemplatesbuildbehavior.py (+4/-19)
lib/lp/translations/tests/test_translationtemplatesbuildbehavior.py (+0/-33)
Changed in soyuz: | |
status: | New → Triaged |
importance: | Undecided → Low |
tags: | added: buildfarm soyuz-build |
tags: |
added: qa-ok removed: qa-needstesting |
Changed in soyuz: | |
status: | Fix Committed → Fix Released |
Fixed in stable r10682 <http:// bazaar. launchpad. net/~launchpad- pqm/launchpad/ stable/ revision/ 10682>