Provide checksum check on uncommited upload that is transformed into a content unit
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 598
- Forks
- 168
- Avg merge
- 1d 4h
- Merged PRs (30d)
- 86
Description
Is your feature request related to a problem? Please describe.
In https://github.com/pulp/pulpcore/issues/5875 we had a discussion about that it is no longer allowed to list artifacts.
That lead to the point that if you want a chunked upload transform in a content unit you should call one of the following on an uncommitted upload
https://pulpproject.org/pulp_file/restapi/#tag/Content:-Files/operation/content_file_files_create
https://pulpproject.org/pulp_rpm/restapi/#tag/Content:-Packages/operation/content_rpm_packages_create
One of the benefits of the /commit step of the chunked upload was that you could verify the end result with a checksum. This is no longer possible in the new scenario
Describe the solution you'd like
Option to pass a checksum when an uncommitted upload is transformed in a content unit. I guess it could also benefit regular uploads and file_url's to have a checksum verification
Describe alternatives you've considered
None
Additional context
This is a consequence of not allowing non admins to list artifacts and allow artifacts to change in content units
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the linked content_file_files_create and content_rpm_packages_create REST operations and the discussion in issue 5875. Define how a checksum is supplied and verified when an uncommitted upload becomes a content unit, including whether regular uploads and file URLs are covered; done means the requested checksum validation is supported and tested.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- api, backend
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100