New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
reproducible builds issues with noarch packages #5784
Comments
This is true. Fedora's Koji compares noarch package builds across arches and if they're built differently, the whole build is failed. This is actually very difficult to do in OBS, since each architecture is an independent build job, whereas Koji ties the build job to a central task that takes the input source (git, svn, or srpm) as the key. This difference in behavior is critical to understanding why Koji can do this while OBS currently cannot. |
|
Dirk Mueller pointed me to the possibility of an ExportFilter that takes a regexp of packages to copy from another build. |
|
On Montag, 10. September 2018, 09:34:16 CEST wrote Bernhard M. Wiedemann:
Dirk Mueller pointed me to the possibility of an [ExportFilter](https://en.opensuse.org/openSUSE:Build_Service_prjconf#ExportFilter) that takes a regexp of packages to copy from another build.
One downside would be that downstream build jobs for one architecture would need to wait on that build job to finish for another architecture.
this would not happen and you could also create new cycles by using this mechanic.
Cycles which can not be calculated before, so you won't see them, just notice endless builds.
…--
Adrian Schroeter
email: adrian@suse.de
SUSE Linux GmbH, GF: Felix Imendörffer, Jane Smithard, Graham Norton, HRB 21284 (AG Nürnberg)
Maxfeldstraße 5
90409 Nürnberg
Germany
|
|
So we should aim to get reproducible noach packages. But that's not something where OBS itself is involved. Closing. |
Issue Description
OBS produces and uses different versions of (unreproducible) noarch packages, which makes verifying OBS builds hard.
See https://reproducible-builds.org/ for why this matters.
Symptom
comparing local builds of SUSE:SLE-15-SP1:GA/skelcd-ha with official ones gave an unexpected diff
neither the OBS build nor the local build happened in July and doing two local builds did not have this diff.
Analysis
The pdf is copied from the release-notes-ha noarch package
shows that different versions of the noarch release-notes-ha exist and comparing with the published version, shows that the ppc64le version was published.
shows the embedded date. The ppc64le noarch version is used for the local build.
Expected Result
OBS should ensure that only one version of a noarch package is published and used for builds later.
I heard, Fedora requires noarch packages to build reproducibly (so pkg-diff would return 0 when comparing x86 and ppc noarch builds).
The second best approach would be to discard the other builds of a noarch package and/or replace them with the canonical/published version.
How to Reproduce
iosc co SUSE:SLE-15-SP1:GA/skelcd-ha && cd $_osc build --keep-pkg=binaries.nachbauosc getbinaries standard x86_64/usr/lib/build/pkg-diff.sh -a binaries{,.nachbau}/skelcd-ha-2018.08.14-*.x86_64.rpmThe text was updated successfully, but these errors were encountered: