Refactor #31300
openthe user shouldn't have to specify the file size when uploading chunks
Description
Currently, the workflow to upload a file to a repository is the following:
1. call content_uploads/create with file size and repo_id
2. call content_uploads/update in a loop with the content_upload_id, the actual chunk content, the offset of the chunk and the file size
3. call repositories/import_uploads
4. call content_uploads/destroy
I find the requirement to pass the file size in every chunk upload confusing. I've provided it already when I created the upload in step1, so I'd expect Katello to just reuse that value (it won't change anyways).
Updated by Justin Sherrill about 3 years ago
from samir:
The upload chunk is an update call on the upload api in pulp3 with upload_href which takes a content_range(offset, offset + actual_chunk_size - 1, size) param as required value which needs to know the size of the file. I couldn't think of any workarounds to this other than querying the pulp api for size on upload or keeping some sort of db in katello.
https://docs.pulpproject.org/pulpcore/restapi.html#operation/uploads_update
Updated by Evgeni Golov about 3 years ago
it does need it, sure, but can't Katello calculate it? the same way it happens if the upload happens via the UI which does not have a "size" field ;)