Project

Profile

Help

Issue #4733

Pulp configured with S3 doesn't give users the Content-Disposition header

Added by bmbouter about 1 year ago. Updated 4 months ago.

Status:
CLOSED - CURRENTRELEASE
Priority:
Normal
Assignee:
Category:
-
Sprint/Milestone:
Start date:
Due date:
Severity:
2. Medium
Version:
Platform Release:
Blocks Release:
OS:
Backwards Incompatible:
No
Triaged:
Yes
Groomed:
No
Sprint Candidate:
No
Tags:
QA Contact:
Complexity:
Smash Test:
Verified:
No
Verification Required:
No
Sprint:
Sprint 65

Description

Problem

After Pulp redirects the user to Amazon S3 to download the file the user receives it but it does not have the correct filename. The Artifact filename is something stored in Pulp's database. It's also possible that one Artifact is present in multiple repos as various filenames so this needs to be set as a per-request piece of data.

Solution

At the redirect time, we'll include the response-content-disposition=attachment; filename=abc.doc'; fragment. This is similar to what Galaxy already did before: https://github.com/ansible/galaxy/blob/devel/galaxy/api/download/views.py#L65

Associated revisions

Revision 9f24cf97 View on GitHub
Added by bmbouter 4 months ago

Have S3 and Azure redirect specify filename

The filename is specified as part of the redirect url.

This also changes the Handler's interface for the plugin writer, and there is a changelog entry with more details.

closes #4733 https://pulp.plan.io/issues/4733

History

#1 Updated by bmbouter about 1 year ago

  • Sprint/Milestone set to 3.0.0

#2 Updated by amacdona@redhat.com about 1 year ago

  • Triaged changed from No to Yes

#3 Updated by daviddavis 9 months ago

  • Sprint/Milestone deleted (3.0.0)

#4 Updated by newswangerd 4 months ago

We're adding a download button in Automation Hub and this issue is causing all of our downloads in the browser to have unintelligible filenames.

#5 Updated by bmbouter 4 months ago

I've asked the question in django-storages upstream about how Pulp can configure this: https://github.com/jschneier/django-storages/issues/819

#6 Updated by bmbouter 4 months ago

  • Status changed from NEW to ASSIGNED
  • Assignee set to bmbouter
  • Sprint set to Sprint 65

Adding to sprint because galaxy team is blocked by it.

#7 Updated by bmbouter 4 months ago

  • Description updated (diff)

Adding solution description.

#8 Updated by bmbouter 4 months ago

  • Status changed from ASSIGNED to POST

#9 Updated by bmbouter 4 months ago

  • Status changed from POST to MODIFIED

#10 Updated by bmbouter 4 months ago

  • Sprint/Milestone set to 3.1.0

#11 Updated by bmbouter 4 months ago

  • Status changed from MODIFIED to CLOSED - CURRENTRELEASE

Please register to edit this issue

Also available in: Atom PDF