Yes, there is an xxx-st where the reproducible build is performed and there is 
no A/B dies in there.
I added some logging:
--- a/meta/lib/oeqa/selftest/cases/reproducible.py
+++ b/meta/lib/oeqa/selftest/cases/reproducible.py
@@ -205,8 +205,8 @@ class ReproducibleTests(OESelftestTestCase):
         capture_vars = ['DEPLOY_DIR_' + c.upper() for c in 
self.package_classes]

         tmpdir = os.path.join(self.topdir, name, 'tmp')
-        if os.path.exists(tmpdir):
-            bb.utils.remove(tmpdir, recurse=True)
+        #if os.path.exists(tmpdir):
+            #bb.utils.remove(tmpdir, recurse=True)

         config = textwrap.dedent('''\
             PACKAGE_CLASSES = "{package_classes}"
@@ -229,6 +229,7 @@ class ReproducibleTests(OESelftestTestCase):

             # This config fragment will disable using shared and the sstate
             # mirror, forcing a complete build from scratch
+            #SSTATE_MIRRORS = 
"https://se-artif-prd.infinera.com/artifactory/list/icex-sstate";
             config += textwrap.dedent('''\
                 SSTATE_DIR = "${TMPDIR}/sstate"
                 SSTATE_MIRRORS = "file://.*/.*-native.*  
http://sstate.yoctoproject.org/all/PATH;downloadfilename=PATH 
file://.*/.*-cross.*
http://sstate.yoctoproject.org/all/PATH;downloadfilename=PATH";
@@ -269,13 +270,17 @@ class ReproducibleTests(OESelftestTestCase):
         # kept after the build so it can be diffed for debugging.

         fails = []
-
+        self.logger.info('vars_A:%s' % vars_A)
+        self.logger.info('vars_B:%s' % vars_B)
         for c in self.package_classes:
+            self.logger.info('c in package_classes:%s' % c)
             with self.subTest(package_class=c):
                 package_class = 'package_' + c

                 deploy_A = vars_A['DEPLOY_DIR_' + c.upper()]
                 deploy_B = vars_B['DEPLOY_DIR_' + c.upper()]
+                self.logger.info('deploy_A:%s' % deploy_A)
+                self.logger.info('deplay_B:%s' % deploy_B)

                 self.logger.info('Checking %s packages for differences...' % c)
                 result = self.compare_packages(deploy_A, deploy_B, 
diffutils_sysroot)

and got this output:
...
2023-12-18 18:35:08,912 - oe-selftest - INFO - vars_A:{'DEPLOY_DIR_IPK': 
'/home/jocke/yocto-xr/build/infn-xr/gmcu-st/tmp/deploy/ipk'}
2023-12-18 18:35:08,913 - oe-selftest - INFO - vars_B:{'DEPLOY_DIR_IPK': 
'/home/jocke/yocto-xr/build/infn-xr/gmcu-st/tmp/deploy/ipk'}
2023-12-18 18:35:08,913 - oe-selftest - INFO - c in package_classes:ipk
2023-12-18 18:35:08,913 - oe-selftest - INFO - 
deploy_A:/home/jocke/yocto-xr/build/infn-xr/gmcu-st/tmp/deploy/ipk
2023-12-18 18:35:08,913 - oe-selftest - INFO - 
deplay_B:/home/jocke/yocto-xr/build/infn-xr/gmcu-st/tmp/deploy/ipk

Notice how both A and B variants are the same. I wonder what setting I got that 
does that ?

 Jocke

On Mon, 2023-12-18 at 17:42 +0100, Alexander Kanavin wrote:
> Note that selftest makes a separate build directory, usually
> ../{current_build_dir}-st.
>
> Alex
>
> On Mon, 18 Dec 2023 at 17:40, Alexander Kanavin via
> lists.openembedded.org <[email protected]>
> wrote:
> >
> > On Mon, 18 Dec 2023 at 17:33, Joakim Tjernlund
> > <[email protected]> wrote:
> > >
> > > I have tried that and there are no A/B dirs in there. I can find 
> > > u-boot...ipk and some other
> > > stuff but there is no evidence that the A/B dirs ever existed.
> >
> > You need to read the test itself as well to see where the directories
> > are. If the code path is going through their creation and running a
> > builds with them, then there's no way they can't exist.
> >
> > Alex
> >
> > 
> >

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#192671): 
https://lists.openembedded.org/g/openembedded-core/message/192671
Mute This Topic: https://lists.openembedded.org/mt/103240689/21656
Group Owner: [email protected]
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to