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 Evgeni Golov about 4 years ago
- Related to Tracker #27680: API bugs that need workarounds in foreman-ansible-modules added
Updated by John Mitsch about 4 years ago
- Target version set to Katello 4.0.0
- Triaged changed from No to Yes
Updated by Justin Sherrill almost 4 years ago
- Target version changed from Katello 4.0.0 to Katello 4.1.0
Updated by Jonathon Turel over 3 years ago
- Target version changed from Katello 4.1.0 to Katello 4.2.0
Updated by Justin Sherrill about 3 years ago
- Target version changed from Katello 4.2.0 to Katello 4.3.0
Updated by Chris Roberts about 3 years ago
- Target version changed from Katello 4.3.0 to Katello 4.4.0
Updated by Ian Ballou almost 3 years ago
- Target version changed from Katello 4.4.0 to Katello 4.5.0
Updated by Justin Sherrill almost 3 years ago
- Target version changed from Katello 4.5.0 to Katello Backlog
Updated by Justin Sherrill almost 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 over 2 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 ;)