feat: go proxy

This commit is contained in:
Anonymous 2024-07-06 11:30:15 +08:00
parent c9ebbac425
commit 098b06a58b
2 changed files with 31 additions and 0 deletions

View File

@ -29,6 +29,7 @@ from mirrorsrun.sites.pypi import pypi
from mirrorsrun.sites.torch import torch from mirrorsrun.sites.torch import torch
from mirrorsrun.sites.docker import dockerhub, k8s, quay, ghcr, nvcr from mirrorsrun.sites.docker import dockerhub, k8s, quay, ghcr, nvcr
from mirrorsrun.sites.common import common from mirrorsrun.sites.common import common
from mirrorsrun.sites.goproxy import goproxy
subdomain_mapping = { subdomain_mapping = {
"mirrors": common, "mirrors": common,
@ -40,6 +41,7 @@ subdomain_mapping = {
"ghcr": ghcr, "ghcr": ghcr,
"quay": quay, "quay": quay,
"nvcr": nvcr, "nvcr": nvcr,
"goproxy": goproxy,
} }
logging.basicConfig( logging.basicConfig(

View File

@ -0,0 +1,29 @@
from starlette.requests import Request
from mirrorsrun.proxy.direct import direct_proxy
from starlette.responses import Response
async def goproxy(request: Request):
path = request.url.path
sumdb_prefix = "/sumdb/sum.golang.org"
if path.startswith(sumdb_prefix):
sumdb_path = path.removeprefix(sumdb_prefix)
if sumdb_path.startswith("/supported"):
return Response(
content=b"",
)
target_url = "https://sum.golang.org" + sumdb_path
return await direct_proxy(
request,
target_url,
)
target_url = "https://proxy.golang.org" + path
return await direct_proxy(
request,
target_url,
)