Hello, I have pushed my adamian/20140519-bldcontrol-5491 branch to poky-contrib -
I hope it establishes semantics about Toaster 1.7; sorry for the wall of text, but I think it's important that I convey this right. A new model is used to describe the workflow of developing with Toaster/bitbake. Comparing the new model with the traditional model of how Bitbake is used, I want to highlight some differences: - the build/ directory in bitbake usage represents at the same time the configuration used to create a build, AND the build artifacts, AND the workspace where bitbake runs. The way this maps to the new mode is : - the configuration is abstracted to a Project, and instantiated by BuildRequests - the build artifacts are represented by a Toaster Build object, with all associated data - the workspace where bitbake runs is represented by a BuildEnvironment We think that this concept separation will help us scale up the development model , by decoupling the actual building work done by long-running bitbake to the build configuration, which is a iterative and very interactive process. ** Concrete steps taken in this brach: - the orm.models got new Project* tables that describe a project configuration. In this model the Project is the base unit of iterative development. A Project has a set of variables, set of layers and set of targets; and a set of Builds. Running a bitbake instance configured with the layers, variables and targets defined for the Project will create a Build. The Build will be associated with the Project that created it. - the bldcontrol.models define models needed to actually trigger build activities; it defines what a BuildEnvironment is; and what a BuildRequest is. A BuildRequest is a copy of the Project settings at a certain moment (created when the user commands a build) and is the object queued for building when a BuildEnvironment becomes available. A BuildEnvironment is a specific instantiation of the "build/" directory where a build activity may take place. A scheduler takes a BuildRequest and a BuildEnvironment and configures the BuildEnvironment according to the configuration specified by the request; and runs the bitbake command on it. Running bitbake will create a Build record that will reflect the build activity going on. In a sense, a BuildRequest configuration tells bitbake how to create the Build, is the Build will be associated with the BuildRequest that generated it. Can you please take a look at it and let me know what you think ? Cheers, Alex -- Alex Damian Yocto Project SSG / OTC
-- _______________________________________________ toaster mailing list [email protected] https://lists.yoctoproject.org/listinfo/toaster
