Bug 16154

Summary: Mirroring process fails if an archive changes hash without changing name
Product: [Infrastructure] Infrastructure General Reporter: Yoann Congal <yoann.congal>
Component: infrastructure-generalAssignee: Unassigned <unassigned>
Status: NEW --- QA Contact:
Severity: normal    
Priority: Medium+ CC: antonin.godard, mhalstead, randy.macleod, yoann.congal
Version: unspecified   
Target Milestone: 6.1   
Hardware: x86   
OS: Multiple   
Whiteboard:
OS type for building Yocto: --- Type of Regression: ---
Verified: Documentation change: Don't know

Description Yoann Congal 2026-01-27 20:38:33 UTC
If, in the life of a recipe, a SRC_URI change hash without changing name, the mirroring test for that recipe fails.

For example, it happens for upstreams which does not put a version in their filenames (see this meta-oe fix[0]

This is because the DL_DIR -> https://downloads.yoctoproject.org/mirror/sources/ deploy process uses "rsync --ignore-existing" (as per [1]). The new archive won't be copied to yp.org (overwriting the old one). So, in the mirroring test, the archive will not match.

This is most likely by design: the old archive may be referenced by other branches (ie stables) and a new archive being uploaded should not break their mirroring tests.

I wonder if we could somehow address the mirrored files by their hash (which we know from the recipe) instead of the filename (which might have multiple possible content). 

[0]: https://git.openembedded.org/meta-openembedded/commit/?id=08e414d496206d0959c2663fad7214596fad3cef
[1]: https://bugzilla.yoctoproject.org/show_bug.cgi?id=15994#c4
Comment 1 Randy MacLeod 2026-01-29 15:51:38 UTC
We should document why the infrastructure works this way.