-
Notifications
You must be signed in to change notification settings - Fork 2.5k
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
[Bug]: Reproducible UI builds #3877
Labels
Comments
TripleDogDare
added a commit
to TripleDogDare/jaeger
that referenced
this issue
Aug 17, 2022
Resolves Issue: jaegertracing#3877 Adds reproducibility checks to the make file and CI. Fixes timestamps embedded in gzipped UI files. Fixes reproducibility for asset-manifest.json before compression/embedding. Signed-off-by: Calvin Behling <calvin.behling@gmail.com>
TripleDogDare
added a commit
to TripleDogDare/jaeger
that referenced
this issue
Aug 17, 2022
Resolves Issue: jaegertracing#3877 Adds reproducibility checks to the make file and CI. Fixes timestamps embedded in gzipped UI files. Fixes reproducibility for asset-manifest.json before compression/embedding. This does not help with reproducibility checks across build systems. But should help that multiple builds on the same build system are reproducible. Signed-off-by: Calvin Behling <calvin.behling@gmail.com>
TripleDogDare
added a commit
to TripleDogDare/jaeger
that referenced
this issue
Aug 17, 2022
Resolves Issue: jaegertracing#3877 Adds reproducibility checks to the make file and CI. Fixes timestamps embedded in gzipped UI files. Fixes reproducibility for asset-manifest.json before compression/embedding. This does not help with reproducibility checks across build systems. But should help that multiple builds on the same build system are reproducible. Signed-off-by: Calvin Behling <calvin.behling@gmail.com>
TripleDogDare
added a commit
to TripleDogDare/jaeger
that referenced
this issue
Sep 1, 2022
Resolves Issue: jaegertracing#3877 Adds reproducibility checks to the make file and CI. Fixes timestamps embedded in gzipped UI files. Fixes reproducibility for asset-manifest.json before compression/embedding. This does not help with reproducibility checks across build systems. But should help that multiple builds on the same build system are reproducible. Signed-off-by: Calvin Behling <calvin.behling@gmail.com>
yurishkuro
pushed a commit
that referenced
this issue
Sep 1, 2022
* Fixes reproducibility for binaries Resolves Issue: #3877 Adds reproducibility checks to the make file and CI. Fixes timestamps embedded in gzipped UI files. Fixes reproducibility for asset-manifest.json before compression/embedding. This does not help with reproducibility checks across build systems. But should help that multiple builds on the same build system are reproducible. Signed-off-by: Calvin Behling <calvin.behling@gmail.com> * Add checksums to releases Adds checksums to the deploy directory during release. Each archive gets a sha256sum file that describes its contents and additionally a checksum of all the archives produced. Removes the reproducibility check from CI. Signed-off-by: Calvin Behling <calvin.behling@gmail.com> * Cleanup Use bash/shopt options in package-deploy to reduce error checking required. Add comments for complex find calls. Inline checksum collection and checking for repro-check target. Signed-off-by: Calvin Behling <calvin.behling@gmail.com> * Change to shasum perl script The perl package shasum is more likely to exist on development machines than the GNU coreutils sha256sum and similar packages. Switching to the shasum package should provide less development friction by not introducing a new dependency. Enable binary mode on the shasum script. GNU coreutils sha256sum uses binary mode by default. It shouldn't make a significant difference to users but I think it's best to just do it. This means updating the sed script in the package-deploy script to ignore the leading asterisk on file paths. Added a guard to the package-deploy script around not detecting a version name because I found that the script would silently accept an empty string when the Makefile was invalid. Signed-off-by: Calvin Behling <calvin.behling@gmail.com> Signed-off-by: Calvin Behling <calvin.behling@gmail.com>
I think this is solved, if not please list additional items required. |
# for free
to join this conversation on GitHub.
Already have an account?
# to comment
What happened?
UI builds are not reproducible.
There's at least two issues that I've discovered so far.
asset-manifest.json
does not maintain a consistent sort order. I'll probably need to add something to./scripts
to resolve this.Steps to reproduce
make rebuild-ui
find ./cmd/query/app/ui/actual/ -type f -exec sha256sum {} \; | tee ui.gz.sha256sum
find ./cmd/query/app/ui/actual -type f -name '*.gz' -delete
make-rebuild-ui
sha256sum -c ui.gz.sha256sum
Expected behavior
sha256sum check should return OK
Relevant log output
No response
Screenshot
No response
Additional context
Other discussion at #3876
Jaeger backend version
No response
SDK
No response
Pipeline
No response
Stogage backend
No response
Operating system
No response
Deployment model
No response
Deployment configs
No response
The text was updated successfully, but these errors were encountered: