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
Document the RPM copy API #1706
Conversation
| ] | ||
| dependency_solving=True | ||
|
|
||
| "Multi-repository-copy", required when any of the repositories involved in the copy are not "dependency closed". |
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.
Explaining this in a satisfactorily simple way is quite difficult, but I'm sure there is still room for improvement.
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 think you did a great job in this section. I can't think of a way describing it easier.
|
Attached issue: https://pulp.plan.io/issues/6332 |
docs/workflows/copy.rst
Outdated
| possible to install correctly on a client system. | ||
|
|
||
| 3) A Module can depend on other modules. If those modules are not present in the RPM repo, the | ||
| module will not be installable on a client system. |
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.
Any reason for the different cases (Module vs modules vs module)?
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.
It's just to draw more attention to the type that the bullet point is talking about. If it's distracting I can not do that.
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.
Ah, either way is fine.
124a12f
to
c86b409
Compare
docs/workflows/copy.rst
Outdated
| or Modules must be present in the same repository - otherwise the Advisory is effectively "broken" | ||
| and won't be possible to install correctly on a client system. |
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'd say that otherwise the Advisory won't be fully installed on a client system.
It's possible to install it, dnf will install everything available, so only available subset will be installed.
docs/workflows/copy.rst
Outdated
| #. A Module consists of many RPM packages (similar to a Package Group). If the module is added to | ||
| a repository without its accompanying RPM packages, the module will not be installable on a client | ||
| system. |
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.
That's a completely valid statement and we can leave it here. Just to be clear, it's taken care of for any copy, not only for advanced version.
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 adjusted some of this language.
docs/workflows/copy.rst
Outdated
| * When copying a Module from one repository to another, all of its modular artifacts | ||
| (RPM packages) will also be copied. |
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.
See previous comment, it happens for any copy.
| Dependency solving does have some restrictions to be aware of. The set of content contained by | ||
| all repositories used in a copy operation must be "dependency closed", which is to say that no | ||
| content in any repository may have a dependency which cannot be satisfied by any content present | ||
| in any of the other repositories involved in the copy operation. | ||
|
|
||
| For example, in CentOS 8, there are two primary repositories which are called "BaseOS" and | ||
| "AppStream". RPMs present in the "AppStream" repository frequently depend on RPMs which are | ||
| not present in "AppStream", but are present in "BaseOS", instead. | ||
|
|
||
| In order to copy RPMs from a Pulp-clone of the "AppStream" repository, you must perform a | ||
| "multi-repository copy" so that the dependencies can be properly resolved. Please see the | ||
| recipe section below for more details on how to do this. |
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.
Should it have it's own heading? Like "Restrictions" or "Requirements". Up to you, just a suggestion to draw more attention to this section.
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 don't necessarily think so -- although I also don't know how to make a sub-heading this many levels deep.
| ] | ||
| dependency_solving=True | ||
|
|
||
| "Multi-repository-copy", required when any of the repositories involved in the copy are not "dependency closed". |
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 think you did a great job in this section. I can't think of a way describing it easier.
|
|
||
| .. copy-workflow: | ||
|
|
||
| Advanced copy workflow |
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.
Is it worth specifying config structure in the docs with the short description of each parameter there? Recipes will help to understand how to use them, however having a list of thing that you can possibly put into config might be useful. What do you think?
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.
Eventually, I think so, but since there is only 5 of them at the moment and 3 of those are mandatory, I'm not sure if it's worth it for now.
d6ed547
to
e3aecef
Compare
closes: #6332 https://pulp.plan.io/issues/6332 [nocoverage]
closes: #6332
https://pulp.plan.io/issues/6332