<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugzilla.yoctoproject.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.6"
          urlbase="https://bugzilla.yoctoproject.org/"
          
          maintainer="it-coreprojects-helpdesk@linuxfoundation.org"
>

    <bug>
          <bug_id>11161</bug_id>
          
          <creation_ts>2017-03-15 10:07:52 +0000</creation_ts>
          <short_desc>yocto-compat-layer: show signature differences</short_desc>
          <delta_ts>2017-04-13 08:48:37 +0000</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>7</classification_id>
          <classification>Build System, Metadata &amp; Runtime</classification>
          <product>Meta-yocto</product>
          <component>meta-yocto</component>
          <version>unspecified</version>
          <rep_platform>x86</rep_platform>
          <op_sys>Multiple</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>Medium+</priority>
          <bug_severity>normal</bug_severity>
          <target_milestone>2.3 M4</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Patrick Ohly">patrick.ohly</reporter>
          <assigned_to name="Patrick Ohly">patrick.ohly</assigned_to>
          <cc>bluelightning</cc>
    
    <cc>poky.bs.watcher</cc>
    
    <cc>poky.watcher</cc>
          
          
          <cf_os>---</cf_os>
          <cf_regression_type>---</cf_regression_type>
          
          <cf_docchange>No (bug/feature does not impact docs)</cf_docchange>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>71300</commentid>
    <comment_count>0</comment_count>
    <who name="Patrick Ohly">patrick.ohly</who>
    <bug_when>2017-03-15 10:07:52 +0000</bug_when>
    <thetext>When test_signatures fails, layer maintainers need to investigate. This is currently manual work and relies on a good understanding of bitbake signature handling, which layer developers might not have.

The yocto-compat-layer should automate that work and provide some instructions (if possible).

Example:
$ yocto-compat-layer.py -d /fast/work/meta-intel 
INFO: Detected layers:
INFO: meta-intel: LayerType.BSP, /fast/work/meta-intel
INFO: meta-tlk: LayerType.SOFTWARE, /fast/work/meta-intel/meta-tlk
INFO: 
INFO: Getting initial bitbake variables ...
INFO: Getting initial signatures ...
INFO: 
INFO: Starting to analyze: meta-intel
INFO: ----------------------------------------------------------------------
INFO: test_bsp_defines_machines (bsp.BSPCompatLayer) ... ok
INFO: test_bsp_no_set_machine (bsp.BSPCompatLayer) ... ok
INFO: test_parse (common.CommonCompatLayer) ... ok
INFO: test_readme (common.CommonCompatLayer) ... ok
INFO: test_show_environment (common.CommonCompatLayer) ... ok
INFO: test_signatures (common.CommonCompatLayer) ... FAIL
INFO: skipped &quot;DistroCompatLayer: Layer meta-intel isn&apos;t Distro one.&quot;
INFO: 
INFO: ======================================================================
INFO: FAIL: test_signatures (common.CommonCompatLayer)
INFO: ----------------------------------------------------------------------
INFO: Traceback (most recent call last):
  File &quot;/fast/work/poky/scripts/lib/compatlayer/cases/common.py&quot;, line 65, in test_signatures
    (self.tc.layer[&apos;name&apos;], detail))
AssertionError: True is not false : Layer meta-intel changed signatures.
packagegroup-core-lsb:do_build changed c933b18e073bcc97dae110b856354424 -&gt; 11deb486eea0428dd9b96640990e6606
packagegroup-core-lsb:do_package_write_rpm changed 1bc1a06f6d054e6b915f3a55b419c074 -&gt; 927a946c9df49cd741194b4b5910ff99
packagegroup-core-lsb:do_packagedata changed 8f948711b648a53f2715542d45ed21be -&gt; 7940f9361b3e46e2014738703bd88d08
packagegroup-core-lsb:do_package_qa changed 74390696ad32aec1c4a699aac0790874 -&gt; 14e027d9d76866f5b628bbb37734321d
meta-world-pkgdata:do_build changed aeab5df30d098cbddf2b1599f463f005 -&gt; 13f8803667d8e2e7d3779028521446fd
packagegroup-core-lsb:do_package changed a8a3700c3fb7d31e2a3db467c3fd598b -&gt; d2b15a26df2358fef1c609cf172387c4
...

In this example, the output of bitbake-diffsigs would be more useful than dumping the signature hashes.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>71332</commentid>
    <comment_count>1</comment_count>
    <who name="Paul Eggleton">bluelightning</who>
    <bug_when>2017-03-16 03:48:53 +0000</bug_when>
    <thetext>I&apos;d recommend using tinfoil to call into the python code to compare the signatures as bitbake-diffsigs does, rather than running bitbake-diffsigs itself. (coincidentally I&apos;m working on improving that code at the moment.)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>71488</commentid>
    <comment_count>2</comment_count>
    <who name="Paul Eggleton">bluelightning</who>
    <bug_when>2017-03-20 20:54:02 +0000</bug_when>
    <thetext>FYI my WIP improvements for the signature comparison code are in paule/sigstuff on poky-contrib.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>71489</commentid>
    <comment_count>3</comment_count>
    <who name="Aníbal Limón">anibal.limon</who>
    <bug_when>2017-03-20 20:56:36 +0000</bug_when>
    <thetext>(In reply to comment #2)
&gt; FYI my WIP improvements for the signature comparison code are in
&gt; paule/sigstuff on poky-contrib.

Good to know, are you planning to integrate into 2.3?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>71533</commentid>
    <comment_count>4</comment_count>
    <who name="Aníbal Limón">anibal.limon</who>
    <bug_when>2017-03-21 18:29:58 +0000</bug_when>
    <thetext>I implemented a solution using bitbake-diffsigs [1], it requires some patches made by Paul because is using new parameter -s to explicit set what signatures needs to be compared.

Also i did a small fix in bb/siggen.py [2] but i don&apos;t know if is the right fix, Paul?

[1] http://git.yoctoproject.org/cgit/cgit.cgi/poky-contrib/commit/?h=alimon/yp_compatible&amp;id=851bb4dcd6804c16528b8216ca0c0a9e51ff05c8
[2] http://git.yoctoproject.org/cgit/cgit.cgi/poky-contrib/commit/?h=alimon/yp_compatible&amp;id=10792b985336d7bd5211672d2b5bedf24854c936</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>72151</commentid>
    <comment_count>5</comment_count>
    <who name="Aníbal Limón">anibal.limon</who>
    <bug_when>2017-04-06 19:04:09 +0000</bug_when>
    <thetext>Patrick send a patch to the ML for review,

http://lists.openembedded.org/pipermail/openembedded-core/2017-April/135205.html

So assign the bug to him.</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>