-
Notifications
You must be signed in to change notification settings - Fork 79
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
Add optimize mode for sync tasks #570
Conversation
6a31aff
to
6cf3a84
Compare
I would adjust the structure of
Remote options belong on the top level, since they are the same for all distributions. |
f64a0d6
to
5c8f2bb
Compare
Let me just add another thought here. Can we not add information to the repository-version itself how it was made? This would be immutable and the repository can always look at it's latest version to retrieve the thing you are implementing here. |
It is an interesting thought, which might have other benefits as well (like being able to debug later how really old repo versions came about). If we go this route, I kind of would like some buy in from pulp_rpm or even pulpcore though. The current implementation is analogous to the one in pulp_rpm and I do like keeping plugins in sync on similar things. I will bring this up in open floor on Tuesday. |
I created a discourse discussion and posted it in #pulp-rpm for discussing the possibility of using repo versions instead of repos: https://discourse.pulpproject.org/t/optimize-sync-and-last-sync-details-in-pulp-rpm/531 |
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.
Most of my suggestions just reflect small style changes.
Overall this looks pretty good to me.
There are still some details where I added a reminder to double check things.
The big question is whether we want to go ahead with the repository.last_sync_details
design, or if we want to rework to use something like repo_version.creation_details
instead. Unfortunately it does not make sense to punt down the road by accepting the implementation we have and then "maybe adjusting it later", since we should get these model changes right from the get go.
5c8f2bb
to
6a6bddd
Compare
e2c51f8
to
b02d3c6
Compare
940c0cc
to
a52b02e
Compare
The current version relies on pulp/pulpcore#2999 to be merged before the tests can pass. |
a52b02e
to
a25d9dd
Compare
53a6c99
to
cf4b9c6
Compare
cf4b9c6
to
08b64b5
Compare
The latest version of this PR, exclusively stores remote options on the new RepositoryVersion field from pulpcore. We have successfully tested skipping entire Release files as well as individual package indices. As such this change is now mostly ready for final review. |
08b64b5
to
f4447b8
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.
I now approve these changes, but since I have been more involved in the latest version as an author, I will look for another secondary review amongst my colleagues. 😉
f4447b8
to
51a0380
Compare
8a7322b
to
74b5de1
Compare
74b5de1
to
b93cde7
Compare
closes pulp#564 Co-Authored-By: Quirin Pamp <pamp@atix.de> This will change the default behaviour of the sync to use optimize unless it is explicitly set to False.
b93cde7
to
bb26166
Compare
After final internal review/debate, we have decided to merge the current state of this new feature (once the tests turn green). |
repository = Repository.objects.get(pk=repository_pk) | ||
repository = AptRepository.objects.get(pk=repository_pk) |
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.
This ended up revealing a previously masked problem with our sanity checks.
We fixed it again using: #633
Required PR: pulp/pulpcore#2999
closes #564
Co-Authored-By: Quirin Pamp pamp@atix.de
This will change the default behaviour of the sync to use optimize
unless it is explicitly set to False.