-
Notifications
You must be signed in to change notification settings - Fork 1
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
Generate and maintain repository metadata in tree #46
base: main
Are you sure you want to change the base?
Conversation
Missing:
|
e0a8f80
to
a0f8dcc
Compare
For some reason I can reproduce the metadata locally in a plain |
73e82e1
to
1f1ee9f
Compare
https://gist.github.com/legoktm/ed61fa944bddd81cf5f8b9e4bbf9ed01 is what the current diff looks like. Going to take a break because I'm a bit at a loss of what to do, in theory we're setting proper mtimes on the files and are even running createrepo_c under faketime. |
@legoktm Gentle nudge on this - is that on the radar for the near-term? If so, do you need any help to get unblocked? |
I still would like to do this but it's not on my list right now since I'm not doing RPMy things. Hopefully in the sprint towards 4.2 I'll get to revisit this. |
77e6ed8
to
e82c852
Compare
Yessssss. It's reproducible now. I need to clean up the Git history and then send a PR in for the infra changes and then we can coordinate rollout. |
Let's match the securedrop-apt-prod process by generating metadata at commit-time instead of doing it on the server. The publish script takes care to generate reproducible output by fixing the mtime of all the RPMs and telling `createrepo_c` what the time should be. CI verifies the generated metadata is up to date and fully reproducible using the `--reproduce` flag.
8bff81f
to
8eb052a
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.
Test plan
- Visual review
- CI passes
- Add any RPM to the f37 folder, run
./tools/publish
locally, see metadata files change. Stage these changes - Run
./tools/publish --reproduce
, you should see no changes to the files compared to the previous step
Thanks for the approval, I'm going to move this back into draft mode just because it also needs coordinated changes in the infrastructure repo. |
Let's match the securedrop-apt-prod process by generating metadata at
commit-time instead of doing it on the server.
The publish script takes care to generate reproducible output by
fixing the mtime of all the RPMs and telling
createrepo_c
what thetime should be.
CI verifies the generated metadata is up to date and fully reproducible
using the
--reproduce
flag.Refs https://github.com/freedomofpress/infrastructure/issues/4241.
Test plan
./tools/publish
locally, see metadata files change. Stage these changes./tools/publish --reproduce
, you should see no changes to the files compared to the previous step