[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