pulp_rpm icon indicating copy to clipboard operation
pulp_rpm copied to clipboard

[v4] Ensure all views / viewsets map to unique, namespaced view names

Open dralley opened this issue 8 months ago • 2 comments

Is your feature request related to a problem? Please describe.

Pulp RPM, Pulp Deb, and Pulp Ansible all happen to have a freestanding CopyViewset registered to its own API endpoint. Unfortunately it seems these don't get automatically namespaced by plugin, so the "name" of the view doesn't get distinguished between the three plugins. We need unique namespaces for these to avoid collisions.

Describe the solution you'd like A clear and concise description of what you want to happen.

Describe alternatives you've considered A clear and concise description of any alternative solutions or features you've considered.

Additional context Add any other context about the feature request here.

dralley avatar Jun 23 '25 01:06 dralley

@ggainey Do you remember what the practical side effects of the collision were?

dralley avatar Jun 23 '25 01:06 dralley

@ggainey Do you remember what the practical side effects of the collision were?

The OperationId for advanced copy for ansible, deb, and rpm is copy_content - if you only have one. If you have more than one, then you get copy_content for whichever-plugin-comes-first in the api.json, and then copy_content_2, and copy_content_3 if you have the third.

pulp-glue (and therefore pulp-cli) "finds" API calls by-operation-id, and as far as each plugin is concerned, its id is copy_content. If you have all three installed, and try to do a pulp rpm copy, you can end up talking to the pulp_ansible endpoint.

ggainey avatar Jun 23 '25 19:06 ggainey