adoptium / ci-jenkins-pipelines

jenkins pipeline build scripts
Apache License 2.0
19 stars 71 forks source link

Update Adoptium #build daily Slack status with Reproducible build results #1091

Closed andrew-m-leonard closed 1 week ago

andrew-m-leonard commented 3 months ago

TRSS now has a "Rebuild_Same_JDK_Reproducibility_Test_0", which reports a "Reproducibility %" : https://trss.adoptium.net/deepHistory?testId=66b48b8dd24e1b006eaa48d5

We should add a new line to the #build daily Slack status reporting the latest EA reproducibility for the reproducible versions and platforms. So currently:

Status script: https://github.com/adoptium/ci-jenkins-pipelines/blob/master/tools/nightly_build_and_test_stats.groovy

Comparing /home/user/jdk-21.0.4+7 with /cygdrive/c/workspace/openjdk-build/workspace/build/openjdkbuild/images/jdk ... output to file: reprotest.diff
Number of differences: 0
ReproduciblePercent = 100 %
adamfarley commented 1 month ago

I've been working on this task in the repository branch here.

I've set up a temporary jenkins job here to test it as I go along.

The results are sent to my Slack Member ID as a direct message, to avoid swamping the build channel.

Example of last successful output: image

This was using dummy percentages, for the sake of testing the formatting.

I'm currently fixing bugs in the percentage parsing code.

adamfarley commented 1 month ago

Update: The code works! We now gather the correct percentages from the correct locations.

Intentionally untested comparable builds that will be tested in the future are labelled "NA".

The output is as depicted below. I'm working with Andrew Leonard to refine the output to make it smaller and most useful.

Pending tasks:

Also, I've added the ability for us to specify different test names + locations by platform.

https://github.com/adoptium/temurin-build/blob/master/test/system/reproducibleCompare/playlist.xml

image

adamfarley commented 1 month ago

Ok, the final changes are in and proven to work.

A PR has been raised here: https://github.com/adoptium/ci-jenkins-pipelines/pull/1113

adamfarley commented 1 week ago

PR 1113 is fully functional.

We have identified a good next step for this enhancement, and that work will be progressed in another issue here: https://github.com/adoptium/ci-jenkins-pipelines/issues/1132