[OE-core] How to add build date? (was: ... basehash value changed...)

Alexander Kanavin alex.kanavin at gmail.com
Sun Nov 17 21:19:32 UTC 2019


I'd write the date into the file at image creation, via
ROOTFS_POSTPROCESS_COMMAND.

Having it in a recipe means that you either force the recipe to not be a
part of sstate cache, always rebuilding it and its dependencies (bad idea),
or accept that the date comes from a previously built cache object, which
means it will mismatch the actual image creation date.

A bit of context would help: why would you want that info in os-release?
Who would use that information and how?

Alex

On Sat, 16 Nov 2019 at 23:14, Joseph Reynolds <jrey at linux.ibm.com> wrote:

>
> Is there a best practice for folks who want to put the build date into
> their generated os-release file?  I've seen this question come up at
> least 3 times in my brief involvement with OE.  I could perhaps add
> comment to the OpenBMC os-release.bbappend file to provide the proper
> guidance.  I would like to hear your ideas.
>
> - Joseph
>
>
> -------- Forwarded Message --------
> Subject:        Re: how to solve the error that basehash value changed
> from
> 'xxx' to 'aaaa' ?
> Date:   Sat, 16 Nov 2019 15:50:38 -0600
> From:   Joseph Reynolds <jrey at linux.ibm.com>
> To:     www <ouyangxuan10 at 163.com>, openbmc at lists.ozlabs.org
> <openbmc at lists.ozlabs.org>
>
>
>
> Byron,
>
> What modification did you put into the os-release recipe?  It would help
> us help you if you put that in your email.
>
>
> Are you adding the build date to the generated os-release file? If so,
> be aware that might cause the issues with the shared state cache you are
> experiencing.  Also be aware this practice wrecks reproducible builds.
>
> A better way to get the same effect might be to create a git tag with
> the information you want to appear in the generated os-release file.
> When you buld with this tag is then picked up by the OpenBMC
> meta-phosphor os-release.bbappend (via `git describe`) and included in
> the genersted os-release file as the BUILD_ID. See:
>
> https://github.com/ibm-openbmc/openbmc/blob/d1c59b7a36c10c18838c07af10b18080174cd61d/meta-phosphor/recipes-core/os-release/os-release.bbappend
> (But I have not tried that.)
>
> A way to work around the hash change is to add a line to your recipe
> like: PR[vardepsxeclude]="DATETIME"
> As suggested by:
> https://forums.openpli.org/topic/41447-how-to-get-rid-of-taskhash-mismatch/
>
>
> My apologies for top posting -- my email reader was not quoting the
> message properly, so I cut/pasted it below.
>
> - Joseph
>
>
> On 11/13/19 1:38 AM, www wrote:
>
> When I modify the os-release file in my yocto project, it appear some
> error, and how can I solve it ? Who can give me some help or advice?
> Thank you!
> I execute the recommended command on the console and it didn't work.
>
> ERROR: os-release-1.0-r0 do_compile: Taskhash mismatch
> ce133f0458608e03aa55224df28156e523e54903115efbbcd62946f84a867201 versus
> 7269881f0eb1759ed420a2db4c04fb477cd8c1288bc5f82df5c8161bb926ea1f
>
> for  /home/temp/xxx/wsp/obmc-source/entity_xxx/meta/recipes-core/os-release/os-release.bb.do_compile
> ERROR: Taskhash mismatch
> ce133f0458608e03aa55224df28156e523e54903115efbbcd62946f84a867201 versus
> 7269881f0eb1759ed420a2db4c04fb477cd8c1288bc5f82df5c8161bb926ea1f
>
> for /home/temp/xxx/wsp/obmc-source/entity_xxx/meta/recipes-core/os-release/os-release.bb.do_compile
> ERROR: When reparsing
> /home/temp/xxx/wsp/obmc-source/entity_xxx/meta/recipes-core/os-release/os-release.bb.do_compile, the
>
> basehash value changed from
> 99a42a1a3b1a151de604267b159558ecaf1031a3bec8917df132c81302e729a5 to
> 4f3288a8763e2e1af78e4b3cdd9c0c0ccb3b0d5c78a3073c188b22200df2a9b0. The
> metadata is not deterministic and this needs to be fixed.
> ERROR: The following commands may help:
> ERROR: $ bitbake os-release -cdo_compile -Snone
> ERROR: Then:
> ERROR: $ bitbake os-release -cdo_compile -Sprintdiff
>
> ERROR: When
> reparsing /home/temp/xxx/wsp/obmc-source/entity_xxx/meta/recipes-core/os-release/os-release.bb.do_compile, the
>
> basehash value changed from
> 99a42a1a3b1a151de604267b159558ecaf1031a3bec8917df132c81302e729a5 to
> 47c30012daa6aa77be09a93fe21e66995361ef26b4487111005617db8cb4de59. The
> metadata is not deterministic and this needs to be fixed.
> ERROR: The following commands may help:
> ERROR: $ bitbake os-release -cdo_compile -Snone
> ERROR: Then:
> ERROR: $ bitbake os-release -cdo_compile -Sprintdiff
>
> thanks,
> Byron
>
> --
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core at lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-core
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openembedded.org/pipermail/openembedded-core/attachments/20191117/76c562b9/attachment-0001.html>


More information about the Openembedded-core mailing list