-
Notifications
You must be signed in to change notification settings - Fork 3
Fm/tar reproducible #111
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
Fm/tar reproducible #111
Conversation
79ac550 to
1664088
Compare
|
Can you provide a test for this functionality? Messing around with owners and the directory listing order is not needed I think, but the timestamp could be tested. |
|
We also compress the tarball, there might be some reproducibility issues there too. For example for |
|
For compatibility reasons (#100) it might also be useful to have the timestamp as option for the CLI. |
ddc62d8 to
85046ad
Compare
|
62f4dc4 is two commits: one that fixes the unclosed session and one that refactors the session handling. Please split it |
|
Same goes for 85046ad: split them so the first commit adds lz4 to the parametrized test, and the second adds the mtime tests. |
fmoessbauer
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
In general, this already looks pretty good. Just some minor aspects.
85046ad to
b734ff1
Compare
b734ff1 to
dba28ff
Compare
c512183 to
0d3e1a2
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks! Please rebase and also remove the obsolete TODO in my patch.
As a preparation to repack reproducible, we pin the owner and sorting of the files within the tar. Signed-off-by: Felix Moessbauer <[email protected]>
To achieve repack reproducible, use the timestamp from the latest changelog for tar creation. Use the -n / --no-name gzip option to not save the original timestamp. Closes: siemens#100 ("reproducible result for source-merge") Signed-off-by: Tamino Larisch <[email protected]>
Before, the --output option for the source-merge command was just ignored. Fixes: 3ad934d ("feat(merger): add infrastructure to create ...") Signed-off-by: Tamino Larisch <[email protected]>
Move the input arguments that are useful for the source-merge and repack commands into a mixin. This simplifies maintenance and prepares for the addition of another option needed for both commands. Signed-off-by: Tamino Larisch <[email protected]>
Add the --mtime cli option to the repack and source-merge commands. This sets the mtime for the tar command. If this option is not set, the timestamp from the most recent changelog is used for reproducible builds, as before. Signed-off-by: Tamino Larisch <[email protected]>
fixes: 221b60f ("test: use custom user agent in all online tests") Signed-off-by: Tamino Larisch <[email protected]>
Use the http_session fixture with the custom user agent to download "some_packages". To keep the session fixture scope from "some_packages", the http_session fixture will now only be created once per session. These test packages should only be downloaded once, even if they will be required for additional tests in the future. fixes: 221b60f ("test: use custom user agent in all online tests") Signed-off-by: Tamino Larisch <[email protected]>
Signed-off-by: Tamino Larisch <[email protected]>
0d3e1a2 to
9d5e9eb
Compare
This change aims to drastically reduce test times. Signed-off-by: Tamino Larisch <[email protected]>
Signed-off-by: Tamino Larisch <[email protected]>
9d5e9eb to
f7fd852
Compare
No description provided.