-
Notifications
You must be signed in to change notification settings - Fork 123
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
Automatically copy module_defaults when their associated modules are copied #1400
Conversation
b003478
to
de30962
Compare
ea99f89
to
ee95129
Compare
e133f89
to
a027769
Compare
10eabec
to
c045a6a
Compare
This PR is currently failing a couple of smash tests because it's pulling in dependencies that were being not being pulled in by the code previously (but I think it's correct in doing so). There's 5 tests failing but all are in the The tests check the total number of units being copied, which is obviously different now that module-defaults are being copied. The errata being tested by |
Tests pass with this PR pulp/Pulp-2-Tests#211 |
Is there a related pulp issue? |
Pulp issue linked in commits: https://pulp.plan.io/issues/5071 Test issue to link it to (or make a subtask for): https://pulp.plan.io/issues/5055#note-2 |
# TODO: Since we're copying the module default metadata as-is without modification or | ||
# regeneration, do we need to add a "requires" for every stream for which there is a | ||
# profile? Is it OK to have profiles for module streams that aren't present or is that | ||
# as terrible an idea as it sounds? |
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.
@dralley , I think it's ok to have profiles for module streams that aren't present
, they are just used for lookups, AFAIK
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'm +1 to to add a "requires" for every stream for which there is a profile
Where is a conflict with multiple module-defaults solved? |
@goosemania It's not implemented - and yes, Steven Gallagher said basically the same thing. Except I'm not sure if libmodulemd provides actual "conflict resolution" or if it just provides validation that metadata is/is not acceptable. My recollection of our discussion was that he thought if validation failed in libmodulemd we should just fail the whole task and not try to resolve conflicts, at least not until we're asked to have that feature, because it would be somewhat fraught with peril. That's probably a discussion we should have w/ product folks, but in my mind it's also worthy of a separate issue and PR. |
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.
Thank you!
Libsolv does need these, so we have to provide fake ones, not just an empty string. re: #5071 https://pulp.plan.io/issues/5071
This is unnecessary, according to Igor. re: #5071 https://pulp.plan.io/issues/5071
Change the name of module-default solvables to follow convention. Make sure module-defaults without a default stream aren't setting streams as defaults. Change the way provides are set up, as there should be no such thing as "module-default(name:stream)" since only one module-default exists per-module. re: #5071 https://pulp.plan.io/issues/5071
Allow it to copy modules also. Ideally, we would do more refactoring to make this less hacky, but unless we change the scope of my work I would prefer to change as little as possible in that regard. re: #5071 https://pulp.plan.io/issues/5071
It's supposed to be possible, but it's problematic in practice. re: #5071 https://pulp.plan.io/issues/5071
I think Igor was wrong there, empty strings are fine. re: #5071 https://pulp.plan.io/issues/5071
1af23f3
to
04cd9ef
Compare
No description provided.