Bug 15612 - Dead link in https://www.yoctoproject.org/reproducible-build-results/
Summary: Dead link in https://www.yoctoproject.org/reproducible-build-results/
Status: CLOSED FIXED
Alias: None
Product: AutoBuilder
Classification: Infrastructure
Component: autobuilder (show other bugs)
Version: 5.2
Hardware: x86 Multiple
: Medium+ normal
Target Milestone: 5.2 M1
Assignee: Mathieu Dubois-Briand
QA Contact:
URL:
Whiteboard:
Depends on:
Blocks:
 
Reported: 2024-10-06 20:19 UTC by Yoann Congal
Modified: 2025-01-14 08:29 UTC (History)
9 users (show)

See Also:
OS type for building Yocto: ---
Type of Regression: ---
Verified:
Documentation change: No (bug/feature does not impact docs)


Attachments
Screenshot of the page in error (66.86 KB, image/png)
2024-10-06 20:19 UTC, Yoann Congal
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Yoann Congal 2024-10-06 20:19:25 UTC
Created attachment 5072 [details]
Screenshot of the page in error

https://reproducible-builds.org/citests/ points to https://www.yoctoproject.org/reproducible-build-results/ which displays an error message:
"Error fetching test results" and an empty template

I'm no webdev but trying to debug :
- The fetched URL is https://git.yoctoproject.org/yocto-testresults/plain/oeselftest/testresults.json?h=master
- This is rejected with "CORS Missing Allow Origin" (as my browser says)
- The URL is wrong anyway : The repo does exist but the file does not exist in the master branch (but did at some point).
Comment 1 Yoann Congal 2024-10-06 20:25:26 UTC
This commit removed almost every test results:
https://git.yoctoproject.org/yocto-testresults/commit/?id=c3db215cd0045a1b9eaa79f3d68fa716bc2bafa0

This is from branch: master
commit: 9ad32cec8e045d580563631ac59f49dff4cae274
date: 2024-09-11 06:05:20 +0000

=> This might be more a bug in AB result production
Comment 2 Michael Halstead 2024-10-07 18:04:34 UTC
The webteam and I repaired the CORS issues back in March of this year. I can take another look at that once testresults.json is available again.

Alexis, can you tell why the latest commits from the autobuilder are not adding a testresults.json file?
Comment 3 Tim Orling 2024-10-10 14:49:03 UTC
Alexis, could you answer Michael's question?
Comment 4 Alexis Lothoré 2024-10-11 05:53:56 UTC
Sorry Michael for the answer delay, I am not actively monitoring Bugzilla, so thanks Tim for the notification. I'll take a look at it
Comment 5 Alexis Lothoré 2024-10-11 16:17:42 UTC
Small update after some investigation:
- for some reason, the a-full/a-quick builds have started detecting two results revisions to store, with one being bogus, leading systematically to a second commit removing the freshly versioned test result
- the issue has started appearing on September, 5th, but I did not narrow exactly the corresponding change yet, despite the changelog being very small in Poky/oe
- however I have spotted that the issue is somehow related to qemuarm-oecore: this one has started to generate some testresults starting from this date, and with a bogus "commit" parameter in the corresponding testresults.json
Comment 6 Alexis Lothoré 2024-10-11 18:01:01 UTC
Some additions:
- I still do not have a clue about why qemuarm-oecore has started to generate some testresults.json files a month ago, I did not find the relevant change either in oecore or in yocto-autobuilder-helper. qemuarm-oecore was already part of a-quick way before the issue appeared
- the deeper issue is that this new testresults.json is wrong: the test results metadata bears an oecore revision in the LAYERS->meta field, which confuses resulttool (and so we end up pushing a commit erasing plenty of results on master branch in yocto-testresults). This field is expected to get only poky revisions
Comment 7 Mathieu Dubois-Briand 2024-10-25 10:16:31 UTC
The extra testresults.json file is generated since commit ebcd355a32e2711263e22d9b45b502696ecbb4d2 in openembedded-core. It is no longer generated if we add back the `TMPDIR .= "-${TCLIBC}"` line in defaultsetup.conf.

I need to continue the investigations to understand what really happens behind this.
Comment 8 Mathieu Dubois-Briand 2024-10-28 13:24:15 UTC
Some quick news:
- The commit in my previous commit merely remove the renaming of the tmp dir to tmp-glibc.
- Before this commit, the testresults.json file already contained a reference oe-core instead of poky. Getting a closer look, it seems this has always been the case.
- Before this commit, the results of qemuarm-oecore were never grabbed, probably because the tmp dir was renamed. https://valkyrie.yocto.io/pub/non-release/20240830-2/testresults/
- So actually it seems this commit FIX an issue we had, but also reveal another issue.
- qemuarm-oecore is a bit special. While other builders rely on poky, this is the only one relying on oe-core. So referencing a commit of oe-core instead of poky in testresults.json makes sense, at least with my current understanding of how things work here.

So, if my understanding is correct, there is no bug in the generation of testresults.json . So far I can see two solutions to this problem:
- Either we modify the builder configuration to rely on poky git, as for the other builders. If we only add "meta" to our bblayers, the situation would mostly be the same. Still, I don't really like this solution, as it kind of goes against the test purpose of testing oe-core alone.
- Or we acknowledge the qemuarm-oecore build is not the same as the others, and handle its testresults.json in a different way (ignore the oe-core revision or link it in some way to a poky revision).

I need to think a bit about all of this. If anybody has any thought, feel free to share.
Comment 9 Richard Purdie 2024-11-14 13:22:44 UTC
I've just merged a patch which filters the results being stored to a specific revision:

https://git.yoctoproject.org/poky/commit/?id=f0d4814d4d1e198e7b6bb1a04d88125159e33d90

and I then enabled this in autobuilder-helper.

With those two changes, only poky revisions should be stored in the testresults git repo and this reproducibility issue should be resolved. Quite where/why this changed behaviour remains unclear.
Comment 10 Mathieu Dubois-Briand 2025-01-13 08:05:19 UTC
Issue has been solved by the change described in the previous comment.
Comment 11 Mathieu Dubois-Briand 2025-01-14 08:29:33 UTC
Closing the bug