Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Install packages without redirect #542

Open
janjagusch opened this issue Jun 21, 2022 · 1 comment
Open

Install packages without redirect #542

janjagusch opened this issue Jun 21, 2022 · 1 comment
Assignees

Comments

@janjagusch
Copy link
Collaborator

When inspecting a package download from Quetz (mamba install --verbose), we've noticed that Quetz doesn't return the package file directly. Instead, it redirects to the underlying storage layer, like GCP or S3.

Example from our logs:

info     libmamba Transfer done for 'mypackage'
info     libmamba Transfer finalized, status: 200 [https://storage.googleapis.com/mybucket/noarch/mypackage-1.0.0-py_0.tar.bz2...]

This is problematic for us, as we work in restricted infrastructure, where Google (and many other) domains tend to be blocked. It would be really useful to us if Quetz returned the package file itself, instead of returning a pre-signed URL to a Cloud provider.

We would be happy to contribute this feature, maybe as a form of server or channel-specific configuration, to Quetz. But before that, it would be appreciated if you could point us in the right direction, as we're not entirely sure which Quetz route is called when Mamba tries to fetch a package.

@jonashaag
Copy link

jonashaag commented Jun 28, 2022

You might want to have a look at #506 where I started implementing the opposite for repodata.json. Without #506 repodata.json is always streamed to the client. You may want to reuse some of the related logic to enable streaming for package data as well.

@janjagusch janjagusch self-assigned this Feb 16, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants