All of lore.kernel.org
 help / color / mirror / Atom feed
From: Michael Wood <michael.g.wood@intel.com>
To: "Barros Pena, Belen" <belen.barros.pena@intel.com>,
	"toaster@yoctoproject.org" <toaster@yoctoproject.org>
Subject: Re: [v2 PATCH] toaster: buildinfohelper Add additional metadata to the built layer
Date: Mon, 21 Mar 2016 15:24:39 +0000	[thread overview]
Message-ID: <56F01237.1020806@intel.com> (raw)
In-Reply-To: <D315BB9C.77284%belen.barros.pena@intel.com>

On 21/03/16 14:58, Barros Pena, Belen wrote:
>
> On 17/03/2016 18:27, "toaster-bounces@yoctoproject.org on behalf of
> Michael Wood" <toaster-bounces@yoctoproject.org on behalf of
> michael.g.wood@intel.com> wrote:
>
>> Add additional metadata to the layer created for build history to be
>> able to identify the layer and recipe later on. Specifically this is the
>> branch and release to which the recipe and layer are associated with
>> enabling differentiation of two recipes which are local release and
>> master and 'master' release.
>>
>> [YOCTO #8528]
>> [YOCTO #8545]
> This totally works:
>
> * Images now come up in the image recipes page of local projects after you
> build them
> * The build information includes the layer branch
>
> But it prompts the question of why we are seeing different branches for
> the core layers: meta-poky and meta-yocto-bsp show master, but my
> openembedded-core shows a different brach (a development one I was using
> previously). I know this has nothing to do with this patch, but just
> wondering why this is happening, and whether is a toaster thing or a
> bitbake thing.

I guess you can check in the toaster cloned layers directory to see if 
what it's reporting is correct first off. Secondly I suspect that this 
is caused by cloning 'self', if you do a new poky git clone and switch 
branches to contrib/catdog and then ask it to build something in 
openembedded-core it will go 'oh I don't need to go and clone 
openembedded-core from the internet because I know there is a copy in my 
directory /meta/ so I will copy myself/this instead' and of course it 
copies it as-is which probably means the git repo is still checked out 
as contrib/catdog.

Michael

> Thanks!
>
> Belén
>   
>> Signed-off-by: Michael Wood <michael.g.wood@intel.com>
>> ---
>> bitbake/lib/bb/ui/buildinfohelper.py | 34
>> +++++++++++++++++++++++-----------
>> 1 file changed, 23 insertions(+), 11 deletions(-)
>>
>> diff --git a/bitbake/lib/bb/ui/buildinfohelper.py
>> b/bitbake/lib/bb/ui/buildinfohelper.py
>> index 28c7353..80ac800 100644
>> --- a/bitbake/lib/bb/ui/buildinfohelper.py
>> +++ b/bitbake/lib/bb/ui/buildinfohelper.py
>> @@ -355,12 +355,17 @@ class ORMWrapper(object):
>>
>>              # create a new copy of this layer version as a snapshot for
>>              # historical purposes
>> -            layer_copy, c =
>> Layer_Version.objects.get_or_create(build=build_obj,
>> -                            layer=layer_obj.layer,
>> -                            commit=layer_version_information['commit'],
>> -                            local_path =
>> layer_version_information['local_path'],
>> -                            )
>> -            logger.info("created new historical layer version %d",
>> layer_copy.pk)
>> +            layer_copy, c = Layer_Version.objects.get_or_create(
>> +                build=build_obj,
>> +                layer=layer_obj.layer,
>> +                up_branch=layer_obj.up_branch,
>> +                branch=layer_version_information['branch'],
>> +                commit=layer_version_information['commit'],
>> +                local_path=layer_version_information['local_path'],
>> +            )
>> +
>> +            logger.info("created new historical layer version %d",
>> +                        layer_copy.pk)
>>
>>              self.layer_version_built.append(layer_copy)
>>
>> @@ -581,11 +586,15 @@ class ORMWrapper(object):
>>                  
>> packagedict[p]['object'].package_dependencies_target.all().delete()
>>                  
>> packagedict[p]['object'].package_dependencies_source.all().delete()
>>                  try:
>> -                    recipe = self._cached_get(Recipe,
>> -                                              name=built_recipe.name,
>> -                                              layer_version__build=None,
>> -
>> file_path=built_recipe.file_path,
>> -
>> version=built_recipe.version)
>> +                    recipe = self._cached_get(
>> +                        Recipe,
>> +                        name=built_recipe.name,
>> +                        layer_version__build=None,
>> +                        layer_version__up_branch=
>> +                        built_recipe.layer_version.up_branch,
>> +                        file_path=built_recipe.file_path,
>> +                        version=built_recipe.version
>> +                    )
>>                  except (Recipe.DoesNotExist,
>>                          Recipe.MultipleObjectsReturned) as e:
>>                      logger.info("We did not find one recipe for the"
>> @@ -1293,6 +1302,9 @@ class BuildInfoHelper(object):
>>                  for cls in event._depgraph['pn'][pn]['inherits']:
>>                      if cls.endswith('/image.bbclass'):
>>                          recipe.is_image = True
>> +                        recipe_info['is_image'] = True
>> +                        # Save the is_image state to the relevant recipe
>> objects
>> +
>> self.orm_wrapper.get_update_recipe_object(recipe_info)
>>                          break
>>              if recipe.is_image:
>>                  for t in self.internal_state['targets']:
>> -- 
>> 2.1.4
>>
>> -- 
>> _______________________________________________
>> toaster mailing list
>> toaster@yoctoproject.org
>> https://lists.yoctoproject.org/listinfo/toaster



  reply	other threads:[~2016-03-21 15:24 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-03-10 14:28 [PATCH 1/2] toasterui: Remove the excessive exception logging Michael Wood
2016-03-10 14:28 ` [PATCH 2/2] toaster: buildinfohelper Add additional metadata to the built layer Michael Wood
2016-03-11  9:42   ` Barros Pena, Belen
2016-03-17 18:27   ` [v2 PATCH] " Michael Wood
2016-03-21 14:58     ` Barros Pena, Belen
2016-03-21 15:24       ` Michael Wood [this message]
2016-03-17 11:47 ` [PATCH 1/2] toasterui: Remove the excessive exception logging Smith, Elliot
2016-03-17 11:49 ` Smith, Elliot

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=56F01237.1020806@intel.com \
    --to=michael.g.wood@intel.com \
    --cc=belen.barros.pena@intel.com \
    --cc=toaster@yoctoproject.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.