kubernetes / kubernetes/release
Reproducible builds for OpenBuildService
- Dominant language
- Go
- Stars
- 504
- Forks
- 556
- Avg merge
- 18h 43m
- Merged PRs (30d)
- 33
Description
Two invocations of `krel obs specs` command with the same parameters are going to provide different tarballs (i.e. with tarballs with different hashes). If we would push these tarballs to OBS, it would trigger the build process two times with different package revisions, even though it's building the same package and version.
OBS can detect this and avoid running the build process the second time if tarballs are identical (i.e. hashes are identical), but as that's not the case for us, it would trigger the build process two times. We should look into feasibility of having reproducible `krel obs specs` specs and tarballs to avoid this.
/sig release
/area release-eng
/kind feature
/priority important-longterm
Contributor guide
Research direction
Start by reproducing two `krel obs specs` invocations with identical parameters and compare the resulting tarball hashes. Investigate which generated specs or tarball contents vary, then define reproducibility criteria that allow OBS to recognize identical packages. Done means repeated invocations produce identical tarballs and avoid duplicate OBS builds.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go
- Domain
- build-system, release
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100