The short execution time is suspicious. The test is written so that
build B doesn't reuse the cache from build A, and if it does because
of your local tweaks, then you're probably just comparing the A
package with itself.

Alex

On Mon, 18 Dec 2023 at 12:20, Joakim Tjernlund via
lists.openembedded.org
<[email protected]> wrote:
>
> I setup above test for reproducible builds and build one pkg(u-boot) and try 
> to force a
> non-reproducible build to test the framework:
> --- a/meta/recipes-bsp/u-boot/u-boot.inc
> +++ b/meta/recipes-bsp/u-boot/u-boot.inc
> @@ -9,7 +9,7 @@ inherit uboot-config uboot-extlinux-config uboot-sign deploy 
> python3native kerne
>
>  DEPENDS += "swig-native"
>
> -EXTRA_OEMAKE = 'CROSS_COMPILE=${TARGET_PREFIX} CC="${TARGET_PREFIX}gcc 
> ${TOOLCHAIN_OPTIONS}" V=1'
> +EXTRA_OEMAKE = 'CROSS_COMPILE=${TARGET_PREFIX} CC="${TARGET_PREFIX}gcc 
> ${TOOLCHAIN_OPTIONS}" V=1 SOURCE_DATE_EPOCH="$(date +%s)"'
>  EXTRA_OEMAKE += 'HOSTCC="${BUILD_CC} ${BUILD_CFLAGS} ${BUILD_LDFLAGS}"'
>  EXTRA_OEMAKE += 'STAGING_INCDIR=${STAGING_INCDIR_NATIVE} 
> STAGING_LIBDIR=${STAGING_LIBDIR_NATIVE}'
>
> forcing EPOCH to current build date but I still get an success report:
>
> oe-selftest -v -r reproducible.ReproducibleTests.test_reproducible_builds
> 2023-12-18 12:05:22,355 - oe-selftest - INFO - Adding layer libraries:
> 2023-12-18 12:05:22,356 - oe-selftest - INFO -  
> /home/jocke/yocto-xr/3pp/poky/meta/lib
> 2023-12-18 12:05:22,356 - oe-selftest - INFO -  
> /home/jocke/yocto-xr/3pp/poky/meta-yocto-bsp/lib
> 2023-12-18 12:05:22,356 - oe-selftest - INFO -  
> /home/jocke/yocto-xr/3pp/meta-openembedded/meta-oe/lib
> 2023-12-18 12:05:22,356 - oe-selftest - INFO -  
> /home/jocke/yocto-xr/meta-xr/lib
> 2023-12-18 12:05:22,356 - oe-selftest - INFO -  
> /home/jocke/yocto-xr/3pp/poky/meta-selftest/lib
> 2023-12-18 12:05:22,359 - oe-selftest - INFO - Running bitbake -e to test the 
> configuration is valid/parsable
> 2023-12-18 12:05:27,248 - oe-selftest - INFO - Adding: "include selftest.inc" 
> in /home/jocke/yocto-xr/build/infn-xr/gmcu-st/conf/local.conf
> 2023-12-18 12:05:27,248 - oe-selftest - INFO - Adding: "include bblayers.inc" 
> in bblayers.conf
> 2023-12-18 12:05:27,248 - oe-selftest - INFO - test_reproducible_builds 
> (reproducible.ReproducibleTests)
> 2023-12-18 12:05:29,724 - oe-selftest - DEBUG - Writing to: 
> /home/jocke/yocto-xr/build/infn-xr/gmcu-st/conf/selftest.inc
>
>
> 2023-12-18 12:08:26,539 - oe-selftest - INFO - Building reproducibleA (sstate 
> allowed)...
> 2023-12-18 12:08:26,545 - oe-selftest - DEBUG - Writing to: 
> /home/jocke/yocto-xr/build/infn-xr/gmcu-st/conf/selftest.inc
> PACKAGE_CLASSES = "package_ipk"
> INHIBIT_PACKAGE_STRIP = "1"
> TMPDIR = "/home/jocke/yocto-xr/build/infn-xr/reproducibleA/tmp"
> LICENSE_FLAGS_ACCEPTED = "commercial"
> DISTRO_FEATURES:append = ' systemd pam'
> USERADDEXTENSION = "useradd-staticids"
> USERADD_ERROR_DYNAMIC = "skip"
> USERADD_UID_TABLES += "files/static-passwd"
> USERADD_GID_TABLES += "files/static-group"
>
>
> 2023-12-18 12:09:08,936 - oe-selftest - INFO - Building reproducibleB (sstate 
> NOT allowed)...
> 2023-12-18 12:09:08,937 - oe-selftest - DEBUG - Writing to: 
> /home/jocke/yocto-xr/build/infn-xr/gmcu-st/conf/selftest.inc
> PACKAGE_CLASSES = "package_ipk"
> INHIBIT_PACKAGE_STRIP = "1"
> TMPDIR = "/home/jocke/yocto-xr/build/infn-xr/reproducibleB/tmp"
> LICENSE_FLAGS_ACCEPTED = "commercial"
> DISTRO_FEATURES:append = ' systemd pam'
> USERADDEXTENSION = "useradd-staticids"
> USERADD_ERROR_DYNAMIC = "skip"
> USERADD_UID_TABLES += "files/static-passwd"
> USERADD_GID_TABLES += "files/static-group"
> 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";
>
>
> 2023-12-18 12:09:24,772 - oe-selftest - INFO - Checking ipk packages for 
> differences...
> 2023-12-18 12:09:24,843 - oe-selftest - INFO - Reproducibility summary for 
> ipk: same=4 different=0 different_excluded=0 missing=0 total=4
> unused_exclusions=[]
> 2023-12-18 12:09:24,847 - oe-selftest - INFO -  ... ok
> 2023-12-18 12:09:26,044 - oe-selftest - INFO - 
> ----------------------------------------------------------------------
> 2023-12-18 12:09:26,044 - oe-selftest - INFO - Ran 1 test in 241.335s
> 2023-12-18 12:09:26,045 - oe-selftest - INFO - OK
> 2023-12-18 12:09:32,355 - oe-selftest - INFO - RESULTS:
> 2023-12-18 12:09:32,356 - oe-selftest - INFO - RESULTS - 
> reproducible.ReproducibleTests.test_reproducible_builds: PASSED (237.60s)
> 2023-12-18 12:09:32,361 - oe-selftest - INFO - SUMMARY:
> 2023-12-18 12:09:32,362 - oe-selftest - INFO - oe-selftest () - Ran 1 test in 
> 241.336s
> 2023-12-18 12:09:32,362 - oe-selftest - INFO - oe-selftest - OK - All 
> required tests passed (successes=1, skipped=0, failures=0, errors=0)
>
>
> Looking harder I don't see oe-seftest ever creating 
> reproducibleA/reproducibleB directories.
> I have these set
> OEQA_REPRODUCIBLE_TEST_PACKAGE = "ipk"
> OEQA_REPRODUCIBLE_TEST_TARGET = "xr-u-boot"
>
> I am missing something?
>
>  Jocke
>
> 
>
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#192640): 
https://lists.openembedded.org/g/openembedded-core/message/192640
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