This branch creates the infrastructure to allow IBuilder to support different behaviors (BinaryPackageBuildBehavior currently, but later SourcePackageRecipeBuildBehavior etc.).
== Proposed fix ==
Create a general interface for build farm job behaviors that can be implemented by various classes, and allow the behavior to be an attribute of the builder to which all relevant calls will be delegated.
This branch begins the extraction of soyuz-specific build behavior for the [Binary]BuildPackageJob into a BinaryPackageBuildBehavior. Subsequent branches (in a pipeline) will continue this.
I plan to re-base these to devel after the release when db-stable is merged back into devel.
= Summary =
This branch creates the infrastructure to allow IBuilder to support different behaviors (BinaryPackageB uildBehavior currently, but later SourcePackageRe cipeBuildBehavi or etc.).
== Proposed fix ==
Create a general interface for build farm job behaviors that can be implemented by various classes, and allow the behavior to be an attribute of the builder to which all relevant calls will be delegated.
This branch begins the extraction of soyuz-specific build behavior for the [Binary] BuildPackageJob into a BinaryPackageBu ildBehavior. Subsequent branches (in a pipeline) will continue this.
I plan to re-base these to devel after the release when db-stable is merged back into devel.
== Pre-implementation notes ==
See the pre-implementation notes on bug 487009.
== Implementation details ==
== Tests ==
bin/test -vv -t doc/builder.txt -t doc/buildqueue.txt -t TestCurrentBuil dBehavior. txt
== Demo and Q/A ==
We will need to Q/A this on dogfood.
= Launchpad lint =
Checking for conflicts. and issues in doctests and templates.
Running jslint, xmllint, pyflakes, and pylint.
Using normal rules.
Linting changed files: soyuz/model/ builder. py soyuz/doc/ builder. txt soyuz/doc/ buildqueue. txt soyuz/configure .zcml soyuz/model/ buildqueue. py buildmaster/ model/buildfarm jobbehavior. py soyuz/interface s/buildqueue. py soyuz/tests/ test_builder. py soyuz/model/ binarypackagebu ildbehavior. py buildmaster/ interfaces/ buildfarmjobbeh avior.py soyuz/interface s/builder. py
lib/lp/
lib/lp/
lib/lp/
lib/lp/
lib/lp/
lib/lp/
lib/lp/
lib/lp/
lib/lp/
lib/lp/
lib/lp/
== Pylint notices ==
lib/lp/ soyuz/model/ builder. py
23: [F0401] Unable to import 'lazr.delegates' (No module named delegates)
lib/lp/ soyuz/interface s/buildqueue. py fields' (No module named restful)
18: [F0401] Unable to import 'lazr.restful.
--
Michael