[Toaster] [PATCH 0/9] database clean ups

Michael Wood michael.g.wood at intel.com
Wed Jul 6 09:26:27 PDT 2016


On 06/07/16 16:43, Smith, Elliot wrote:
> On 5 July 2016 at 16:40, Michael Wood <michael.g.wood at intel.com 
> <mailto:michael.g.wood at intel.com>> wrote:
>
>     Preparation work for fixing a number of issues with adding layers
>     (non-git and otherwise) and creating initial configuration by
>     cleaning up some of the redundant/awkward/complex bits of the
>     database.
>
>     This branch is available on poky-contrib
>     michaelw/toaster/database_clean_ups
>
>     Some current patches on the mailing list will cause a conflict
>     with this branch so I will almost certainly have to roll a v2 of
>     this, but it can be reviewed.
>
>
> A few comments on these patches:
>
> * _reduce_canon_path() and _get_id_for_sourcetype() in loadconf.py can 
> be removed, as they're no longer used anywhere.

Ah yes, I probably didn't remove those as they came up in a `git grep` 
in bldcontrol/tests.py ...yeah those tests are useless so can be removed.

Once a lot of the redundant complexities are removed the end game will, 
I hope to remove loadconf.py entirely and use django's data loader

>
>   The imports in loadconf.py include LayerSource, which can be removed 
> once these functions have been removed.
>
>   The tests for these two functions in 
> bitbake/lib/toaster/bldcontrol/tests.py can be removed.
>
> * There's no longer a releaselayersourcepriority model. Does this have 
> any effect if there are multiple layers associated with a release from 
> different sources, all of which provide the same recipe? (I'm assuming 
> this is what that model used to be for.) Or does bitbake just sort 
> this out for us?

Bitbake doesn't really care about layers in this sense afaik, I think 
the correct way of doing this sort of preference is by setting the 
PREFERRED_VERSIONfor a recipe you're building in the project 
configuration. Having multiple identical layers for a single release 
never happened in practice because of the constraint that layers for a 
particular release are unique as the UI became far too confusing 
otherwise. If you wanted two openembedded-cores for example you would 
have two different layers and you would probably add the appropriate one 
to your project rather than having potentially two in there and hoping 
toaster/bitbake will choose the right one (the global priority system 
also was pretty inflexible as once it was setup you couldn't change it 
for a project anyway).


>
> * This line (around 160) in views.py is a bit of an eyesore:
>
>   "detail": "(%s" % x.layer.vcs_url + (")" if x.release == None else " 
> | "+x.get_vcs_reference()+")"),

Agreed! it's not my code! I just replaced the variable name. Hopefully 
we will replace this code soon (bug #9519)


>
> * I'd personally prefer the layer_source field on LayerVersion to be 
> renamed as layer_source_type, as it now refers to an enum, rather than 
> another object. But this is minor and can be left if it's a lot of work.

Yeah I did consider this, as it's just an enum it can easily be changed, 
but for minimising changes which might break things I thought it would 
be better to stick with the old variable names, though it turned out 
that it didn't appear in that many places. I can change this when I rebase.

>
> Elliot
>
>
>
>     Michael Wood (9):
>       toaster: loadconf remove Loading LayerSources
>       toaster: bldcollector admin Remove LayerSourceAdmin
>       toaster: models Remove LayerSource models and replace with enum
>       toaster: lsupdates Add layerindex fetcher
>       toaster: Replace references to LayerSource models
>       toaster: tests: Remove references to LayerSource model
>       toaster: lsupdates Add progress information and clean up logging
>       toaster: orm Remove the layerindex specific up_branch fields
>       toaster: admin Add Layer_Version to the admin-able models
>
>      bitbake/lib/bb/ui/buildinfohelper.py               |   6 +-
>      bitbake/lib/toaster/bldcollector/admin.py          |  22 +-
>      .../bldcontrol/management/commands/loadconf.py     |  71 +--
>      .../toaster/orm/management/commands/lsupdates.py   | 289 +++++++++++-
>      .../0008_delete_layer_source_references.py         | 118 +++++
>      .../orm/migrations/0009_delete_layersource.py      |  17 +
>      .../0010_use_release_instead_of_up_branch.py       |  60 +++
>      bitbake/lib/toaster/orm/models.py                  | 500
>     +++++----------------
>      bitbake/lib/toaster/orm/tests.py                   | 180 --------
>      .../fixtures/toastergui-unittest-data.xml          |  60 +--
>      .../toaster/toastergui/templates/layerdetails.html |   6 +-
>      bitbake/lib/toaster/toastergui/tests.py            |   5 +-
>      bitbake/lib/toaster/toastergui/views.py            |  75 ++--
>      13 files changed, 674 insertions(+), 735 deletions(-)
>      create mode 100644
>     bitbake/lib/toaster/orm/migrations/0008_delete_layer_source_references.py
>      create mode 100644
>     bitbake/lib/toaster/orm/migrations/0009_delete_layersource.py
>      create mode 100644
>     bitbake/lib/toaster/orm/migrations/0010_use_release_instead_of_up_branch.py
>      delete mode 100644 bitbake/lib/toaster/orm/tests.py
>
>     --
>     2.7.4
>
>     --
>     _______________________________________________
>     toaster mailing list
>     toaster at yoctoproject.org <mailto:toaster at yoctoproject.org>
>     https://lists.yoctoproject.org/listinfo/toaster
>
>
>
>
> -- 
> Elliot Smith
> Software Engineer
> Intel Open Source Technology Centre
>
> ---------------------------------------------------------------------
> Intel Corporation (UK) Limited
> Registered No. 1134945 (England)
> Registered Office: Pipers Way, Swindon SN3 1RJ
> VAT No: 860 2173 47
>
> This e-mail and any attachments may contain confidential material for
> the sole use of the intended recipient(s). Any review or distribution
> by others is strictly prohibited. If you are not the intended
> recipient, please contact the sender and delete all copies.
>



More information about the toaster mailing list